Olá. Tenho dificuldade em entender o funcionamento da cláusula EXISTS no SQL, parece que é a mesma coisa da cláusula IN, são semelhantes, mas sei que não são iguais. Gostaria de entender como funciona... Acho que pode ser útil no meu dia a dia.
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Olá. Tenho dificuldade em entender o funcionamento da cláusula EXISTS no SQL, parece que é a mesma coisa da cláusula IN, são semelhantes, mas sei que não são iguais. Gostaria de entender como funciona... Acho que pode ser útil no meu dia a dia.
Bruno, boa tarde!
Temos um tópico aqui no fórum da Alura que pode te ajudar!
https://cursos.alura.com.br/forum/topico-diferenca-no-uso-de-exists-e-in-60724
Mas uma resposta que eu achei muito boa foi a do moderador no fórum da Microsoft:
Espero ter ajudado e bons estudos! Qualquer dúvida só mandar aqui, estamos prontos para ajudar!
O tópico MSDN é bom mesmo. Lá também tirei uma outra dúvida, pensei que poderia ter alguma diferença se a subquery selecionasse um campo diferente, mas quando se usa EXISTS não faz diferença. Ex. : Select * from Tabela where exists(select 1 from Tabela2)
Ou
Select * from Tabela where exists(select * from Tabela2)
Ou até mesmo
Select * from Tabela where exists(select pk from Tabela2)