Duration
12s
Input Tokens
1033
Output Tokens
404
Cost
$0.00
Context
Input
Hi I'm Oscar that enrolled in 2018, I don't remember what courses I completed, can you help me?
Expected output
SELECT DISTINCT c.title FROM users u JOIN enrollments e ON u.user_id = e.user_id JOIN lessons l ON l.course_id = e.course_id JOIN completions cp ON cp.lesson_id = l.lesson_id AND cp.user_id = u.user_id JOIN courses c ON c.course_id = l.course_id WHERE u.name ILIKE '%oscar%' AND DATE_TRUNC('year', e.enrolled_at) = DATE '2018-01-01';
Model output
WITH oscar_id AS (
SELECT user_id FROM users WHERE name = 'Oscar'
),
completed_courses AS (
SELECT
c.course_id,
c.title AS course_title,
e.enrolled_at
FROM enrollments e
JOIN courses c ON e.course_id = c.course_id
WHERE e.user_id = (SELECT user_id FROM oscar_id)
AND e.status = 'completed'
AND EXTRACT(YEAR FROM e.enrolled_at) = 2018
AND (
SELECT COUNT(*)
FROM lessons l
WHERE l.course_id = c.course_id
) = (
SELECT COUNT(*)
FROM completions comp
WHERE comp.user_id = (SELECT user_id FROM oscar_id)
AND comp.lesson_id IN (
SELECT lesson_id FROM lessons WHERE course_id = c.course_id
)
)
)
SELECT
course_id,
course_title,
enrolled_at AS completion_date
FROM completed_courses
ORDER BY enrolled_at;