Interrogazioni self-join

Una query self-join unisce una tabella a se stessa.

Ad esempio, per trovare tutti i record meteo che si trovano nell'intervallo di temperatura di altri record meteo, è necessario confrontare le colonne temp_lo e temp_hi di ogni riga meteo con le colonne temp_lo e temp_hi di tutte le altre righe meteo:
MYDB.SCHEMA(USER)=> SELECT W1.city, W1.temp_lo AS low, W1.temp_hi AS high,
     W2.city, W2.temp_lo AS low, W2.temp_hi AS high
     FROM weather W1, weather W2
     WHERE W1.temp_lo < W2.temp_lo
     AND W1.temp_hi > W2.temp_hi;

La query di esempio ridenomina la tabella meteo come W1 e W2 per distinguere tra il lato sinistro e quello destro del join.