Autor Zpráva
JOIN2x
Profil *
Mám jednoduchý select (db SQLite):
SELECT tab1.*, tab2.hodnota FROM tab1 JOIN tab2 ON tab1.datum1 = tab2.datum
z kterého získám z tab2 'hodnotu' dle příslušné podmínky tab1.datum1 = tab2.datum
jenže potřebuji ve stejném selectu získat ještě jednou tab2.hodnota, ale dle podmínky tab1.datum2 = tab2.datum
Když jsem zkusil select
SELECT tab1.*, tab2.hodnota AS hodnota1, tab2.hodnota AS hodnota2 FROM tab1 JOIN tab2 ON tab1.datum1 = tab2.datum JOIN tab2 ON tab1.datum2 = tab2.datum
tak to zahlásilo chybu
Prosím, v čem jsem udělal chybu, děkuji za radu
Tori
Profil
Použijte aliasy: SELECT a.hodnota, b.hodnota2 ... JOIN tab2 AS a ON ... JOIN tab2 AS b ON ...
JOIN2x
Profil *
To je přesně ono, moc děkuji za radu
JOIN2x
Profil *
Tak přece jen problémek, nevím jestli nedělám někde chybu nebo jestli to jde.
Jde o to, že když je např. hodnota tab1.datum=NULL tak to nevrátí žádný záznam.
Lze to udělat, aby to podmínku tab1.datum1 = tab2.datum v případě tab1.datum1=NULL ignorovalo popř. vrácená hodnota1 byla NULL ?
Tori
Profil
JOIN je v sqlite totéž jako INNER JOIN. Použijte LEFT JOIN.
JOIN2x
Profil *
To je ono, opět děkuji za radu.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0