Rewritten
This lists each user's name alongside how many orders they've placed, but only includes users with more than five orders. It joins `users` to `orders` on the user id, keeps every user via the LEFT JOIN, groups the rows by user name to count orders per person, and then filters the grouped results down to those with a count above five.
About this tool
A SQL query with several joins, a subquery, and a window function can be hard to read even for people who write SQL daily. This tool translates a query into a plain-English description of what it retrieves, which tables it involves, and how the pieces fit together. It's useful for reviewing a query someone else wrote, understanding a report you inherited, or double-checking that a query you're about to run does what you think before it hits production data.
Frequently asked questions
Does it work with any SQL dialect?+
Yes — it handles standard SQL and common dialects like PostgreSQL, MySQL, and SQL Server, explaining dialect-specific functions where relevant.
Will it tell me if my query is slow?+
It explains what the query does, not its performance. For optimization, you'd want your database's query planner (EXPLAIN) output.
Can it explain a query without knowing my schema?+
Mostly yes — it infers meaning from table and column names. Providing schema context makes the explanation more precise.