[PHP] Selezionare i campi non in comune con le altre colonne della tabella

samurai.sette

Utente Attivo
17 Dic 2015
226
6
18
Ciao a tutti. Apro questa discussione per chiedervi un piccolo aiuto.
Ho una tabella così composta:
id | x | y |
1 |data|spostamento1|
2 |temp|spostamento2|
3 | |spostamento3|
4 | |spostamento4|
5 | |temp|

Quello che vorrei fare è questo: vorrei selezione tutti i dati della colonna "y" ed escludere quelli in comune con le altre colonne (in questo caso l'elemento da escludere è "temp" in quanto è presente nella colonna "x").
Come potrei fare? Avete qualche consiglio da darmi?
Grazie mille, ciao.
 

marino51

Utente Attivo
28 Feb 2013
2.865
153
63
Lombardia
prova così,
Codice:
select
  t1.id
, t1.x
, t1,y
from tabella t1
left join tabella t2
on t1.y = t2.x
where t2.x is null

oppure

select distinct t1,y
from tabella t1
left join tabella t2
on t1.y = t2.x
where t2.x is null
scegliendo la query che preferisci
 

samurai.sette

Utente Attivo
17 Dic 2015
226
6
18
Ciao Marino51, grazie per la risposta.
Scusami ma non ho ben capito la tua possibile soluzione. Da quello che ho capito utilizzi due tabelle (t1 e t2) ma io ho solo una tabella.
Mi potresti spiegare a grandi linee la tua soluzione?
Ciao, grazie mille.
 

marino51

Utente Attivo
28 Feb 2013
2.865
153
63
Lombardia
utilizzo una sola tabella che ho chiamato "tabella",
ma la utilizzo 2 volte nella stessa query, la prima volta la chiamo "t1" e la seconda "t2"
in questo modo riesco ad avere "due" tabelle per confrontare le colonne della stessa tabella
essendo i valori da confrontare sparsi su righe diverse