MySQL + SQL · Lesson 73

EXISTS and NOT EXISTS

EXISTS Operator

EXISTS returns TRUE if a subquery returns at least one row. NOT EXISTS is the opposite. Often faster than IN for checking existence.

Examples

-- students who have paid at least one fee
SELECT name FROM students s
WHERE EXISTS (SELECT 1 FROM fees f WHERE f.roll_no = s.roll_no);

-- students who have NOT paid any fee
SELECT name FROM students s
WHERE NOT EXISTS (SELECT 1 FROM fees f WHERE f.roll_no = s.roll_no);

Summary

  • EXISTS = true if the subquery has any row; NOT EXISTS = none.
  • Great for "has related record / has no related record" checks.
🔗

Share this topic with a friend

यह topic किसी दोस्त को भेजें

Found it useful? Send it to a classmate learning the same thing.

अच्छा लगा? जो दोस्त यही सीख रहा है, उसे भेज दीजिए।

WhatsApp