Mysql
 sql >> Database >  >> RDS >> Mysql

Come evitare le funzioni di aggregazione degli errori non sono consentite in WHERE

Sostituisci WHERE clausola con HAVING , in questo modo:

SELECT o.ID ,  count(p.CAT)
FROM Orders o
INNER JOIN Products p ON o.P_ID = p.P_ID 
GROUP BY o.ID
HAVING count(p.CAT) > 3;

HAVING è simile a WHERE , ovvero entrambi vengono utilizzati per filtrare i record risultanti ma HAVING viene utilizzato per filtrare i dati aggregati (quando GROUP BY viene utilizzato).