Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Existe / não existe:'selecionar 1' vs 'selecionar campo'


Sim, são iguais. exists verifica se há pelo menos uma linha na subconsulta. Em caso afirmativo, ele é avaliado como true . As colunas na subconsulta não importam de forma alguma.

De acordo com o MSDN, exists :

Especifica uma subconsulta para testar a existência de linhas.

E Oráculo:

Uma condição EXISTS testa a existência de linhas em uma subconsulta.

Talvez a documentação do MySQL seja ainda mais explicativa:

Tradicionalmente, uma subconsulta EXISTS começa com SELECT *, mas pode começar com SELECT 5 ou SELECT coluna1 ou qualquer outra coisa. O MySQL ignora a lista SELECT em tal subconsulta, então não faz diferença.