Problem
Task
Return employees whose manager_id is NULL.
Schema
Table Schema
employees(id, name, department, salary, manager_id)
Input
Sample Data
| id | name | department | salary | manager_id |
|---|---|---|---|---|
| 1 | Mina | Engineering | 70000 | NULL |
| 2 | Daniel | Engineering | 80000 | 1 |
| 3 | Sofia | Marketing | 60000 | NULL |
Output
Expected Output
| id | name | department | salary | manager_id |
|---|---|---|---|---|
| 1 | Mina | Engineering | 70000 | NULL |
| 3 | Sofia | Marketing | 60000 | NULL |
Answer
Check Your Solution
Show Answer and Explanation
Correct Answer
SELECT *
FROM employees
WHERE manager_id IS NULL;
Explanation
NULL represents an unknown or missing value. SQL uses IS NULL instead of = NULL because NULL is not equal to any value, including itself.
Common Mistakes
- Writing manager_id = NULL.
- Using an empty string check for a numeric manager_id column.
- Assuming NULL and 0 mean the same thing.
Concepts
Related Concepts
NULL
IS NULL
Three-Valued Logic
WHERE
Next practice