SQL > Advanced SQL >
EXISTS is a Boolean operator used in a subquery to test whether the inner query returns any row. If it does, then the outer query proceeds. If not, the outer query does not execute, and the entire SQL statement returns nothing.
The syntax for EXISTS is:
Please note that instead of *, you can select one or more columns in the inner query. The effect will be identical.
We use the following tables for our example.
The following SQL query,
SELECT SUM(Sales) FROM Store_Information
(SELECT * FROM Geography
WHERE Region_Name = 'West');
produces the result below:
At first, this may appear confusing, because the subquery includes the [region_name = 'West'] condition, yet the query summed up sales for stores in all regions. Upon closer inspection, we find that since the subquery returns more than zero row, the EXISTS condition is true, and the rows returned from the query "SELECT SUM(Sales) FROM Store_Information" become the final result.