SQL EXISTS Operator
The SQL EXISTS Operator
The EXISTS operator is used to test for the existence of any record in a
subquery.
The EXISTS operator returns true if the subquery returns one or more records.
EXISTS Syntax
SELECT column_name(s)
FROM table_name
WHERE
EXISTS
(SELECT column_name FROM table_name WHERE
condition);
Demo Database
Below is a selection from the "Products" table in the Northwind sample database:
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 |
And a selection from the "Suppliers" table:
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 |
SQL EXISTS Examples
The following SQL statement returns TRUE and lists the suppliers with a product price less than 20:
Example
SELECT SupplierName
FROM Suppliers
WHERE EXISTS (SELECT ProductName FROM
Products WHERE SupplierId = Suppliers.supplierId AND Price < 20);
The following SQL statement returns TRUE and lists the suppliers with a product price
equal to 22:
Example
SELECT SupplierName
FROM Suppliers
WHERE EXISTS (SELECT ProductName FROM
Products WHERE SupplierId = Suppliers.supplierId AND Price = 22);
Comments
Post a Comment