Oracle
 sql >> Database >  >> RDS >> Oracle

Esiste/non esiste:'seleziona 1' vs 'seleziona campo'

Sì, sono la stessa cosa. exists controlla se c'è almeno una riga nella sottoquery. In tal caso, restituisce true . Le colonne nella sottoquery non contano in alcun modo.

Secondo MSDN, exists :

Specifica una sottoquery per verificare l'esistenza di righe.

E Oracle:

Una condizione EXISTS verifica l'esistenza di righe in una sottoquery.

Forse la documentazione di MySQL spiega ancora di più:

Tradizionalmente, una sottoquery EXISTS inizia con SELECT *, ma potrebbe iniziare con SELECT 5 o SELECT column1 o qualsiasi altra cosa. MySQL ignora l'elenco SELECT in una tale sottoquery, quindi non fa alcuna differenza.