Your question is SQL Zero Results Checks. Take a moment with it on the right.
Talk me through your thinking if you like. When you're confident, submit your answer and I'll grade it like a real screen (7/10 or better passes).
A customer using Eightfold's recruiting platform reports that a saved search for active candidates in the interview stage is returning zero rows, even though they can see matching candidates in the UI. You pull up the query behind the saved search.
CREATE TABLE candidates (
candidate_id INT PRIMARY KEY,
full_name VARCHAR(120),
status VARCHAR(20), -- stored lowercase: 'active', 'archived', 'withdrawn'
created_at TIMESTAMP
);
CREATE TABLE applications (
application_id INT PRIMARY KEY,
candidate_id INT REFERENCES candidates(candidate_id),
job_id INT,
stage VARCHAR(30), -- values are written by an ETL job with trailing spaces, e.g. 'Interview '
applied_at TIMESTAMP
);
-- A nightly job materializes this view from candidates + applications; it last refreshed 26 hours ago
CREATE VIEW active_pipeline AS
SELECT c.candidate_id, c.full_name, a.stage, a.applied_at
FROM candidates c JOIN applications a ON a.candidate_id = c.candidate_id;
SELECT full_name
FROM active_pipeline
WHERE stage = 'Interview'
AND applied_at >= CURRENT_DATE - INTERVAL '7 days';
If this query returns zero results when the customer insists matching candidates exist, what are the first three things you would check, and what would each one tell you?