Visualizza la versione completa : [MYSQL] - Select su pił tabelle
Ciao a tutti,
ho tre tabelle:
t_utente
id
nome
cognome
t_caratteristica
id
caratteristica
r_caratteristica_utente
id
id_utente
id_caratteristica
Vorrei fare una select per tirarmi fuori tutti gli utenti che hanno caratteristica_1, caratteristica_2, caratteristica_3 soddisfatte (non OR ma AND).
Come posso strutturarla?
Grazie mille
Ma che vuoi dire con, "caratteristica_1, caratteristica_2, caratteristica_3 soddisfatte" ?!?!
Non sono mica dei campi...
Originariamente inviato da Samleo
Ma che vuoi dire con, "caratteristica_1, caratteristica_2, caratteristica_3 soddisfatte" ?!?!
Non sono mica dei campi...
Non sono dei campi, sono i valori da ricercare nella tabella r_caratteristica_utente.
Magicale
29-07-2009, 16:23
SELECT t_utente . *
FROM t_utente
INNER JOIN r_caratteristica_utente AS r_caratteristica_utente_1
ON r_caratteristica_utente_1.id_utente = t_utente.id
INNER JOIN r_caratteristica_utente AS r_caratteristica_utente_2
ON r_caratteristica_utente_2.id_utente = t_utente.id
INNER JOIN r_caratteristica_utente AS r_caratteristica_utente_3
ON r_caratteristica_utente_3.id_utente = t_utente.id
INNER JOIN t_caratteristica AS t_caratteristica_1
ON r_caratteristica_utente_1.id_caratteristica = t_caratteristica_1.id
INNER JOIN t_caratteristica AS t_caratteristica_2
ON r_caratteristica_utente_2.id_caratteristica = t_caratteristica_2.id
INNER JOIN t_caratteristica AS t_caratteristica_3
ON r_caratteristica_utente_3.id_caratteristica = t_caratteristica_3.id
WHERE
t_caratteristica_1.caratteristica = 'caratteristica_1'
AND
t_caratteristica_2.caratteristica = 'caratteristica_2'
AND
t_caratteristica_3.caratteristica = 'caratteristica_3'
Originariamente inviato da Magicale
SELECT t_utente . *
FROM t_utente
INNER JOIN r_caratteristica_utente AS r_caratteristica_utente_1
ON r_caratteristica_utente_1.id_utente = t_utente.id
INNER JOIN r_caratteristica_utente AS r_caratteristica_utente_2
ON r_caratteristica_utente_2.id_utente = t_utente.id
INNER JOIN r_caratteristica_utente AS r_caratteristica_utente_3
ON r_caratteristica_utente_3.id_utente = t_utente.id
INNER JOIN t_caratteristica AS t_caratteristica_1
ON r_caratteristica_utente_1.id_caratteristica = t_caratteristica_1.id
INNER JOIN t_caratteristica AS t_caratteristica_2
ON r_caratteristica_utente_2.id_caratteristica = t_caratteristica_2.id
INNER JOIN t_caratteristica AS t_caratteristica_3
ON r_caratteristica_utente_3.id_caratteristica = t_caratteristica_3.id
WHERE
t_caratteristica_1.caratteristica = 'caratteristica_1'
AND
t_caratteristica_2.caratteristica = 'caratteristica_2'
AND
t_caratteristica_3.caratteristica = 'caratteristica_3'
Grazie mille!!