Candidate telemetry diagnostic, error autopsy, and step-by-step query construction walkthrough.
Live aggregated metrics across candidate sandbox attempts
54 solved
First attempt fail
Evaluated submissions
Median time to solve
Unlocked answer
Some customers don't have a company. Use COALESCE to show 'Individual' for customers without a company.
Write a query showing customer names and their company, with 'Individual' for those without one.
| Column | Type |
|---|---|
| CustomerId | INTEGER (Primary Key) |
| FirstName | TEXT |
| LastName | TEXT |
| Company | TEXT |
| Address | TEXT |
| City | TEXT |
| State | TEXT |
| Country | TEXT |
| PostalCode | TEXT |
| Phone | TEXT |
| Fax | TEXT |
| TEXT | |
| SupportRepId | INTEGER (Foreign Key → Employee.EmployeeId) |
COALESCE(x, y, ...) returns the first non-NULL argument. It's standard SQL and works in PostgreSQL, MySQL, and most other databases.
Your result should have 20 rows with 3 columns: | firstname | lastname | company | |-----------|-----------|--------------------------------------------------| | Tim | Goyer | Apple Inc. | | Alexandre | Rocha | Banco do Brasil S.A. | | Luís | Gonçalves | Embraer - Empresa Brasileira de Aeronáutica S.A. | | Frank | Harris | Google Inc. | | François | Tremblay | Individual | | ... | ... | ... |
Using `NOT IN (SELECT nullable_col FROM ...)` when the subquery contains NULLs. In SQL's three-valued logic, `x NOT IN (1, 2, NULL)` evaluates to `UNKNOWN` for all rows, causing the entire query to return zero results. Use `NOT EXISTS` or `WHERE nullable_col IS NOT NULL`.
Interviewers evaluate whether you are aware of SQL three-valued logic (TRUE, FALSE, UNKNOWN), safe NULL coercion with COALESCE, and anti-join optimization.
Construct the solution logically from first principles to avoid typical edge case pitfalls.
Identify columns with NULL values and choose safe operators (IS NULL, COALESCE, or NOT EXISTS).
WHERE column_name IS NULL OR COALESCE(amount, 0) > 0
Use LEFT JOIN ... WHERE right.id IS NULL or NOT EXISTS to find non-matching records without falling into the NOT IN trap.
LEFT JOIN related_table rt ON pt.id = rt.ref_id WHERE rt.ref_id IS NULL
Provide user-friendly fallbacks for empty fields using COALESCE(col, 'Unknown').
SELECT id, COALESCE(title, 'Untitled') AS title FROM table_name;
SELECT FirstName, LastName, COALESCE(Company, 'Individual') AS Company FROM Customer ORDER BY Company, CustomerId LIMIT 20;
Real code patterns candidates submit that fail the grading suite.
SELECT * FROM Customer WHERE Company = NULL;
Three recurring syntax and semantic traps relevant to this problem domain.
If any subquery row returns NULL, NOT IN evaluates to UNKNOWN and discards all records.
SELECT * FROM customers WHERE id NOT IN (SELECT customer_id FROM inactive_list); -- ❌ Fails if NULL exists
SELECT * FROM customers c WHERE NOT EXISTS (SELECT 1 FROM inactive_list i WHERE i.customer_id = c.id); -- ✅ Safe
Writing `col = NULL` or `col != NULL` always returns UNKNOWN. Always use `IS NULL` or `IS NOT NULL`.
SELECT * FROM tracks WHERE composer = NULL; -- ❌ Returns 0 rows always
SELECT * FROM tracks WHERE composer IS NULL; -- ✅ Proper NULL check
NULL values in numerical addition yield NULL. Use COALESCE(col, 0) before performing arithmetic or string concatenation.
SELECT salary + bonus AS total_comp FROM staff; -- ❌ total_comp is NULL if bonus is NULL
SELECT salary + COALESCE(bonus, 0) AS total_comp FROM staff; -- ✅ Robust arithmetic
Launch our in-browser coding environment. Run queries, view execution plans, and get instant comparative diff grading with no setup.