Subqueries With EXISTS
Test for the existence of rows. The EXISTS operator returns TRUE if the subquery returns at least one row, often used for correlated subqueries.
Syntax
SELECT ... WHERE EXISTS <Table subquery>Description
SELECT col1 FROM t1 WHERE EXISTS (SELECT * FROM t2);SELECT col1 FROM t1 WHERE EXISTS (SELECT col2 FROM t2);Examples
CREATE TABLE sq1 (num TINYINT);
CREATE TABLE sq2 (num2 TINYINT);
INSERT INTO sq1 VALUES(100);
INSERT INTO sq2 VALUES(40),(50),(60);
SELECT * FROM sq1 WHERE EXISTS (SELECT * FROM sq2 WHERE num2>50);
+------+
| num |
+------+
| 100 |
+------+
SELECT * FROM sq1 WHERE NOT EXISTS (SELECT * FROM sq2 GROUP BY num2 HAVING MIN(num2)=40);
Empty set (0.00 sec)Last updated
Was this helpful?

