Query : forzare una LEFT JOIN

di il
1 risposte

Query : forzare una LEFT JOIN

Buona giornata a tutti. Ho bisogno del vostro parere
su una semplice query.

Se fate :
select ... from
t1 left join t2 on t1.kiave = t2.kiave
where
(t2.altro_campo <> 'x')

quello non vi fa vedere tutti i records di t1,
ma solo quelli dopo la scrematura della
where.

Io invece devo *SI* togliere i record della t2
che non soddisfano la where, ma avere
TUTTI i records della t1, in ogni caso.

Come posso fare ?
Ho provato a fare (e funziona) :
SELECT
db2.codage,
db2.cognome,
db2.nome,
locale_01.codice_fiscale,
locale_01.partita_iva,
locale_01.criterio,
locale_02.indirizzo,
locale_02.citta
FROM
(db2 LEFT JOIN locale_01 ON db2.codage=locale_01.codage)
LEFT JOIN locale_02 ON db2.codage=locale_02.codage
WHERE
((locale_01.criterio='a') Or (locale_01.codage Is Null))
And
((locale_02.criterio='a') Or (locale_02.codage Is Null));

Ma sara' il metodo migliore ?

Grazie.

1 Risposte

  • Re: Query : forzare una LEFT JOIN

    Ciao hai provato cosi ?
    select ... from
    t1 left join t2 on t1.kiave = t2.kiave
    and
    (t2.altro_campo <> 'x')
Devi accedere o registrarti per scrivere nel forum
1 risposte