Images are reused AI-generated editorial illustrations, not documentary photographs or verified product screenshots.
The Google Sheets QUERY function can turn a rectangular source range into a small reporting view. Its query text uses the Google Visualization API Query Language, not every feature of a general SQL database. Start with a clean synthetic table and make headers and column types explicit before applying it to business records.
Define the input grain and types
Use one row per intended record and one meaning per column. QUERY determines a column’s type from its majority type; minority types can be treated as null. A text amount among real numbers may therefore disappear from a calculation. Inspect the source instead of interpreting every blank result as a genuinely missing transaction.

Start with a small explicit query
For a synthetic range with category in A and amount in B, =QUERY(A1:B4,"select A, sum(B) group by A",1) groups amounts by category. The final argument identifies one header row. Check the actual range and locale syntax. Do not paste database-specific SQL features and assume this language supports them.
Validate the report against source records
Keep the output area clear so the returned array can expand. Verify each group and the total through an independent small calculation. Test an empty category, text amount and changed header. QUERY displays a derived view; it does not repair source data, enforce a business approval or make the workbook a transactional database.
A practical checklist
- Define one record per input row.
- Inspect numeric and text types.
- Specify the header count deliberately.
- Keep space for the returned array.
- Reconcile group totals with source records.
Worked example
Illustrative example: three synthetic rows contain Design 20, Design 30 and Support 10. The grouped view should show Design 50 and Support 10, totaling 60. Replacing one numeric amount with text prompts a source-type review; the team does not silently treat the changed result as a lower billable total.

Common questions
Is QUERY identical to SQL on a server? No. Can mixed types affect results? Yes. Does a returned table validate the underlying business records? No; reconcile the source and meaning separately.
What to do next
Keep the source schema and a tiny expected-result fixture alongside the formula. A reporting view becomes maintainable when its assumptions are visible and its totals can be checked.
Sources and further reading
Related reading
- How to Offer Spreadsheet Cleanup as a Freelance Service
- Selling Technical Documentation as a Professional Service
Google Sheets Tables: Organize Records Without Confusing Them with a Database
