- Home
- Categorie
- Coding e Sistemistica
- MYSQL e altri Database
- [MySQL] WHERE IN and IF NOT EXISTS
-
[MySQL] WHERE IN and IF NOT EXISTS
Buonasera a tutti,
ho necessità di fare un query su due tabelle:UTENTI
user_id | email | telefono | mobile**STRUTTURA **
user | email | telefono | mobilele due tabelle sono in relazione tramite user_id e user.
Ho creato la seguente query, che estrae le informazioni basandosi sul campo email:
SELECT t1.email, t1.user_id, t1.telefono, t1.mobile, t2.telefono, t2.mobile FROM utenti t1, struttura t2 WHERE t1.email IN ( '[email protected]', '[email protected]', '[email protected]' ) and t1.user_id = t2.user ORDER BY t1.email
Ovviamente c'è un limite:
se l'indirizzo da me passato non è presente su UTENTI ma solo su STRUTTURA nella query non ottengo alcun record in merito.Vorrei usare la condizione NOT EXISTS o scegliere un'altra strada in modo tale che se in indirizzo non viene trovato su UTENTI allora la query viene fatto su STRUTTURA.
Come posso procedere?
Grazie.
-
Risolto:
SELECT t1.email, t2.email, t1.user_id, t1.mobile, t2.mobile FROM utenti t1 LEFT JOIN struttura t2 ON t1.user_id=t2.user WHERE ( t1.email IN ( '[email protected]', '[email protected]', '[email protected]' ) OR t2.email IN ( '[email protected]', '[email protected]', '[email protected]' ) ) ORDER BY t1.email, t2.email