ho una select di questo tipo:

SELECT * FROM tbl1 INNER JOIN tbl2
ON (tbl1.col1 = tbl2.col1)
AND (tbl1.col2 = tbl2.col2)
AND (tbl1.col3 = tbl2.col3)
WHERE tbl1.col2 LIKE :col2
AND tbl1.col3 LIKE :col3
AND tbl1.col4 LIKE :col4
AND tbl2.col5 LIKE :col5
LIMIT 100;

il problema è che col5 è quasi sempre null, e con una query di questo tipo mi restituisce solo le righe che in cui i valori contenuti in col5 non sono null...come posso fare?
72 messaggi dal 21 settembre 2002
Prova:
SELECT * FROM tbl1 LEFT JOIN tbl2 etc etc
oppure
SELECT * FROM tbl1 RIGHT JOIN tbl2 etc etc
uno dei due dovrebbe risolvere i tuoi problemi

A parte la dislessia della mia domanda....ho risolto... usando LEFT JOIN (che mi restituisce anche i valori null) però ho dovuto spostare WHERE condizione "tbl2.col5 LIKE :col5" in un ciclo del tipo:
if col5 not null then
   query con where
else
   query senza where
end if

... altrimenti mi ritrovavo come prima...ma forse si può fare di meglio...grazie mille...

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.