aggregate in WHERE SQL Origin: Data Last updated 14 Oct 2026

ERROR: aggregate functions are not allowed in WHERE (use HAVING) / MySQL 1111 Invalid use of group function

An aggregate (SUM, COUNT, AVG) was used in WHERE, which filters rows before grouping.

Exact message you may see aggregate functions are not allowed in WHEREInvalid use of group functionAn aggregate may not appear in the WHERE clause
Seen on: SQL

Meaning

WHERE runs before GROUP BY; aggregates must be filtered with HAVING (or in an outer query).

Common causes

  • WHERE SUM(x) > …
  • Aggregates in UPDATE SET without a subquery

⚡ Quick fix

  1. Move the condition to HAVING
  2. Use a subquery/CTE for complex filters

Detailed fix by platform

SQL

  1. SELECT customer_id, SUM(total) FROM orders GROUP BY customer_id HAVING SUM(total) > 1000;

How to diagnose

  1. Clause — Aggregate in WHERE?
  2. Recent change — Did it start after a deploy, upgrade, or configuration change? Compare with the last working version.

🔧 Still not fixed?

Many errors look alike. If the steps above didn’t solve it, one of these is probably what you’re facing:

Where this error sits

Origin: Data. Errors that are often confused with or caused by this one (click to open):

102 — SQL Server: Incorrect syntax near 'x'. (Msg 102) (SQL)1021064 — MySQL ERROR 1064 (42000): You have an error in your SQL syntax (MySQL)10641066 — MySQL ERROR 1066 (42000): Not unique table/alias: 'x' (SQL)10661136 — MySQL ERROR 1136 (21S01): Column count doesn't match value count at row 1 (SQL)11361222 — MySQL ERROR 1222 (21000): The used SELECT statements have a different number of columns (SQL)12221248 — MySQL ERROR 1248 (42000): Every derived table must have its own alias (SQL)124842601 — ERROR: syntax error at or near "x" (PostgreSQL)42601ambiguous column — Column reference is ambiguous / Column 'id' in field list is ambiguous (MySQL 1052) (SQL)ambiguous columnaggregate…

Explore the map of this error Full error map →

🧠 Still stuck? Analyze your error

Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.

💬 What worked for others

No tips yet — did something else fix this for you?

Share what worked for you

Tips are checked by an editor before they appear. Links are removed.