Tutorials SQL Server Mastery

Set Operators: UNION vs UNION ALL, INTERSECT, and EXCEPT

On this page

SQL Set Operators

Set operators allow you to combine the results of two queries. Unlike JOINS (which combine columns horizontally), SET operators combine results Vertically (stacking them on top of each other).

1. UNION vs UNION ALL (The Performance Choice)

UNION combines rows and removes duplicates. UNION ALL combines rows and keeps everything. Architect Tip: Always use UNION ALL unless you specifically need to hide duplicates. UNION requires an expensive 'Sort' operation to find duplicates, which can be 10x slower on large datasets.

2. INTERSECT and EXCEPT

  • INTERSECT: Returns only rows that appear in BOTH queries. (The "Overlap").
  • EXCEPT: Returns rows that appear in Query A but NOT in Query B. (The "Difference").

4. Interview Mastery

Q: "Why would I use EXCEPT instead of 'WHERE NOT IN' or 'NOT EXISTS'?"

Architect Answer: "`EXCEPT` handles NULLs differently and compares the *entire row*. `NOT IN` fails completely if the subquery returns even a single NULL. `EXCEPT` treats two NULLs as equal, allowing for a much safer and cleaner comparison of two similar tables (e.g., comparing a 'Backup' table with the 'Live' table to see what changed)."

SQL Server Mastery
Course syllabus
1. SQL Server Architecture & Basics SQL Server Internals: How the Storage Engine works Relational Database Design & Normalization (1NF to 3NF) Data Types Mastery: Choosing the right type for performance
2. Advanced T-SQL Querying Joins Deep Dive: Inner, Outer, Cross, and Self Joins Subqueries vs CTEs: Writing readable, high-performance code Window Functions: ROW_NUMBER, RANK, and LEAD/LAG Aggregations & Grouping Sets: Building complex reports Set Operators: UNION vs UNION ALL, INTERSECT, and EXCEPT
3. Indexing & Performance Tuning Clustered vs Non-Clustered Indexes: The physical storage reality Covering Indexes & Included Columns: Reducing I/O costs Index Fragmentation: Why it happens and how to fix it Execution Plans: Reading the Query Optimizer's mind Statistics: Why 'Out of Date' stats kill performance SARGability: Writing queries that actually use indexes
4. Database Programmability Stored Procedures: Security, Performance, and Best Practices User Defined Functions (UDF): Scalar vs Table-Valued Triggers: Auditing changes and the dangers of hidden logic Views & Indexed Views: Abstraction with performance Error Handling: TRY/CATCH and XACT_STATE()
5. Transactions & Concurrency Transaction Isolation Levels: Read Uncommitted to Snapshot Locking & Blocking: Analyzing Deadlocks like a Pro Optimistic vs Pessimistic Concurrency
6. Administration & Security SQL Server Security: Logins, Users, and Roles SQL Injection Prevention: Beyond simple parameterization Backup & Recovery Models: Full vs Simple vs Bulk-Logged Automating Maintenance: SQL Agent Jobs & Rebuilding Indexes
7. Modern SQL & Cloud SQL Server & JSON: Storing and Querying semi-structured data Temporal Tables: Keeping track of data history automatically Introduction to Azure SQL: Database as a Service (PaaS) SQL Server Developer Interview: Junior to Senior Architect Level
Toolliyo Assistant
Ask about tutorials, ebooks, training, pricing, mentor services, and support. I use public site content only—not admin or internal tools.

care@toolliyo.com

Need callback? Share your details