EXCEPT
SetReturns rows from the first SELECT that are not in the second SELECT.
Syntax
SELECT cols FROM t1 EXCEPT SELECT cols FROM t2
Example
SELECT id FROM all_users EXCEPT SELECT user_id FROM banned_users;
About SQL EXCEPT
The EXCEPT keyword belongs to the Set category of SQL statements. Returns rows from the first SELECT that are not in the second SELECT. Understanding this command is essential for any developer working with relational databases like PostgreSQL, MySQL, SQLite, or SQL Server.
SQL (Structured Query Language) is the standard language for managing and querying relational databases. The EXCEPT statement is supported across all major database systems, though specific syntax may vary slightly between PostgreSQL, MySQL, MariaDB, Oracle, SQL Server, and SQLite. Always consult your database's documentation for vendor-specific features and limitations.
Best practices for using EXCEPT: always test queries on a development database before running them in production, use parameterized queries to prevent SQL injection, and leverage EXPLAIN to understand query performance. For complex queries, consider using CTEs (Common Table Expressions) to improve readability and maintainability.