SQL Generation

Turn plain-English questions into correct SQL against a schema. The skill behind analytics chat, natural-language dashboards, and 'just ask the database' interfaces.

100
Duration
10s
Input Tokens
1540
Output Tokens
286
Cost
$0.00
Context
Input
Who are the instructors making the most money from enrollments? Give me a list (instructor_name) and total earnings (total_earnings) sorted by their earnings please.
Expected output
SELECT u.name as instructor_name, SUM(p.amount) AS total_earnings FROM payments p JOIN enrollments e ON p.enrollment_id = e.enrollment_id JOIN courses c ON e.course_id = c.course_id JOIN users u ON c.instructor_id = u.user_id GROUP BY u.name ORDER BY total_earnings DESC;
Model output
WITH instructor_earnings AS (
    SELECT
        u.name AS instructor_name,
        SUM(p.amount) AS total_earnings
    FROM
        users u
    JOIN
        courses c ON u.user_id = c.instructor_id
    JOIN
        enrollments e ON c.course_id = e.course_id
    JOIN
        payments p ON e.enrollment_id = p.enrollment_id
    GROUP BY
        u.name
)
SELECT
    instructor_name,
    total_earnings
FROM
    instructor_earnings
ORDER BY
    total_earnings DESC;