Tutorial SQL

SQL INÍCIO Introdução SQL Sintaxe SQL Seleção SQL SQL Select Distinto SQL Onde SQL E, Ou, Não Ordem SQL por SQL Inserir em Valores Nulos SQL Atualização SQL Excluir SQL SQL Select Top SQL Mínimo e Máximo Contagem SQL, Média, Soma Como SQL Curingas SQL Entrada SQL SQL entre Alias ​​SQL Junções SQL SQL Inner Join SQL Left Join Associação à direita do SQL Associação completa SQL Auto-junção SQL União SQL SQL Agrupar por SQL tendo SQL existe SQL Qualquer, Todos SQL Selecionar em SQL Inserir na seleção Caso SQL Funções Nulas SQL Procedimentos armazenados SQL Comentários SQL Operadores SQL

Banco de dados SQL

SQL Criar banco de dados SQL Drop DB Banco de dados de backup SQL SQL Criar Tabela Tabela de descarte de SQL Tabela de alteração SQL Restrições SQL SQL não nulo SQL exclusivo Chave Primária SQL Chave estrangeira SQL Verificação SQL Padrão SQL Índice SQL Incremento automático de SQL Datas SQL Visualizações SQL Injeção SQL Hospedagem SQL Tipos de dados SQL

Referências SQL

Palavras-chave SQL Funções do MySQL Funções do SQL Server Funções de acesso MS Referência Rápida SQL

Exemplos SQL

Exemplos SQL Teste SQL Exercícios de SQL Certificado SQL

Operador SQL EXISTS


O operador SQL EXISTS

O EXISTSoperador é usado para testar a existência de qualquer registro em uma subconsulta.

O EXISTSoperador retornará TRUE se a subconsulta retornar um ou mais registros.

Sintaxe EXISTS

SELECT column_name(s)
FROM table_name
WHERE EXISTS
(SELECT column_name FROM table_name WHERE condition);

Banco de dados de demonstração

Abaixo está uma seleção da tabela "Produtos" no banco de dados de exemplo Northwind:

ProductID ProductName SupplierID CategoryID Unit Price
1 Chais 1 1 10 boxes x 20 bags 18
2 Chang 1 1 24 - 12 oz bottles 19
3 Aniseed Syrup 1 2 12 - 550 ml bottles 10
4 Chef Anton's Cajun Seasoning 2 2 48 - 6 oz jars 22
5 Chef Anton's Gumbo Mix 2 2 36 boxes 21.35

E uma seleção da tabela "Fornecedores":

SupplierID SupplierName ContactName Address City PostalCode Country
1 Exotic Liquid Charlotte Cooper 49 Gilbert St. London EC1 4SD UK
2 New Orleans Cajun Delights Shelley Burke P.O. Box 78934 New Orleans 70117 USA
3 Grandma Kelly's Homestead Regina Murphy 707 Oxford Rd. Ann Arbor 48104 USA
4 Tokyo Traders Yoshi Nagase 9-8 Sekimai Musashino-shi Tokyo 100 Japan

Exemplos de SQL EXISTS

A seguinte instrução SQL retorna TRUE e lista os fornecedores com preço de produto menor que 20:

Exemplo

SELECT SupplierName
FROM Suppliers
WHERE EXISTS (SELECT ProductName FROM Products WHERE Products.SupplierID = Suppliers.supplierID AND Price < 20);

A seguinte instrução SQL retorna TRUE e lista os fornecedores com preço de produto igual a 22:

Exemplo

SELECT SupplierName
FROM Suppliers
WHERE EXISTS (SELECT ProductName FROM Products WHERE Products.SupplierID = Suppliers.supplierID AND Price = 22);