mysql: ERROR 1064 (42000): You have an error in your SQL syntax near 'GROUP BY ...'
This is a wiki page. Be bold and improve it!
If you have any questions about the content on this page, don't hesitate to open a new ticket and we'll do our best to assist you.
GROUP BY ... HAVING
The query:
mysql> SELECT id, COUNT(id) AS count FROM my_table HAVING count > 1 GROUP BY id;would result in the error:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'GROUP BY id' at line 1HAVING must come after GROUP BY. Simply invert the two clauses:
mysql> SELECT id, COUNT(id) AS count FROM my_table GROUP BY id HAVING count > 1;GROUP BY ... ORDER BY
As above, GROUP BY must come before ORDER BY. Make sure the two clauses are not inverted.