0
0
SQLquery~20 mins

Set operations with ORDER BY in SQL - Practice Problems & Coding Challenges

Choose your learning style9 modes available
Challenge - 5 Problems
🎖️
Set Operations Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
query_result
intermediate
2:00remaining
Output of UNION with ORDER BY on combined result
Consider two tables EmployeesA and EmployeesB with a single column name. What is the output of the following query?
SELECT name FROM EmployeesA
UNION
SELECT name FROM EmployeesB
ORDER BY name ASC;
SQL
CREATE TABLE EmployeesA(name VARCHAR(20));
INSERT INTO EmployeesA VALUES ('Alice'), ('Bob'), ('Charlie');
CREATE TABLE EmployeesB(name VARCHAR(20));
INSERT INTO EmployeesB VALUES ('Bob'), ('Diana'), ('Eve');
A
Alice
Bob
Charlie
Diana
Eve
B
Alice
Bob
Bob
Charlie
Diana
Eve
C
Bob
Alice
Charlie
Diana
Eve
D
Alice
Charlie
Diana
Eve
Attempts:
2 left
💡 Hint
UNION removes duplicates and ORDER BY sorts the combined result.
query_result
intermediate
2:00remaining
Effect of ORDER BY inside individual SELECTs with UNION ALL
Given two tables Numbers1 and Numbers2 each with a column num, what is the output of this query?
SELECT num FROM Numbers1 ORDER BY num DESC
UNION ALL
SELECT num FROM Numbers2 ORDER BY num ASC;
SQL
CREATE TABLE Numbers1(num INT);
INSERT INTO Numbers1 VALUES (3), (1), (2);
CREATE TABLE Numbers2(num INT);
INSERT INTO Numbers2 VALUES (4), (5);
ASyntax error due to ORDER BY in subqueries
B
3
1
2
4
5
C
1
2
3
4
5
D
5
4
3
2
1
Attempts:
2 left
💡 Hint
ORDER BY is not allowed inside individual SELECTs in UNION unless wrapped in subqueries.
📝 Syntax
advanced
2:00remaining
Correct placement of ORDER BY with INTERSECT
Which of the following queries correctly returns the common id values from tables Table1 and Table2 sorted in descending order?
ASELECT id FROM Table1 ORDER BY id DESC INTERSECT SELECT id FROM Table2;
BSELECT id FROM Table1 INTERSECT SELECT id FROM Table2;
CSELECT id FROM Table1 INTERSECT SELECT id FROM Table2 ORDER BY DESC id;
DSELECT id FROM Table1 INTERSECT SELECT id FROM Table2 ORDER BY id DESC;
Attempts:
2 left
💡 Hint
ORDER BY applies to the final result of the set operation.
query_result
advanced
2:00remaining
Output of EXCEPT with ORDER BY and duplicates
Given tables SetA and SetB with column val, what is the output of this query?
SELECT val FROM SetA
EXCEPT
SELECT val FROM SetB
ORDER BY val ASC;
SQL
CREATE TABLE SetA(val INT);
INSERT INTO SetA VALUES (1), (2), (2), (3);
CREATE TABLE SetB(val INT);
INSERT INTO SetB VALUES (2);
A
1
2
2
3
B
1
2
3
C
1
3
D
2
3
Attempts:
2 left
💡 Hint
EXCEPT removes all values from SetA that appear in SetB, duplicates removed.
🧠 Conceptual
expert
2:00remaining
Why ORDER BY must be last in set operations
Why is it required that the ORDER BY clause appears only once at the end of a query combining multiple SELECTs with set operations like UNION, INTERSECT, or EXCEPT?
ABecause SQL does not allow ORDER BY anywhere in queries with set operations.
BBecause set operations combine unordered sets, so sorting must happen after the full result is formed.
CBecause ORDER BY inside individual SELECTs would sort only partial results, which is ignored by the database.
DBecause ORDER BY clauses inside set operations cause the database to run slower.
Attempts:
2 left
💡 Hint
Think about how set operations treat their inputs and outputs.