У меня есть запрос mysql, который хорошо работает локально. Мой компьютер работает под управлением Windows 10, и я использую эту версию mysql: mysql Ver 8.0.11 for Win64 on x86_64 (MySQL Community Server - GPL)
Это запрос
SELECT conso_ht.Date_conso AS myDate, sum(conso_ht.Conso_Tranche_Jour) AS jour, sum(conso_ht.Conso_Tranche_Pointe) AS pointe, sum(conso_ht.Conso_Tranche_Nuit) AS nuit
FROM conso_ht
WHERE conso_ht.Compteur = "37178777837"
GROUP BY year(conso_ht.Date_conso) ASC, month(conso_ht.Date_conso) ASC;
Версия mysql моего сервера mysql Ver 8.0.15 for Linux on x86_64 (MySQL Community Server - GPL)
Это ошибка, с которой я столкнулся
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 'ASC, month(conso_ht.Date_conso) ASC' at line 1`
Как я могу это решить ??
Группа не хочет ASC или DESC, если вам нужно добавить порядок для этого
также вы не можете использовать другой уровень агрегации в отношении выбора и группы по например, выберите дату и сгруппируйте по году и месяцу
SELECT year(conso_ht.Date_conso) , month(conso_ht.Date_conso)
, sum(conso_ht.Conso_Tranche_Jour) AS jour
, sum(conso_ht.Conso_Tranche_Pointe) AS pointe
, sum(conso_ht.Conso_Tranche_Nuit) AS nuit
FROM conso_ht
WHERE conso_ht.Compteur = "37178777837"
GROUP BY year(conso_ht.Date_conso) , month(conso_ht.Date_conso)
ORDER BY year(conso_ht.Date_conso) ASC , month(conso_ht.Date_conso) ASC
или
SELECT conso_ht.Date_conso AS myDate
, sum(conso_ht.Conso_Tranche_Jour) AS jour
, sum(conso_ht.Conso_Tranche_Pointe) AS pointe
, sum(conso_ht.Conso_Tranche_Nuit) AS nuit
FROM conso_ht
WHERE conso_ht.Compteur = "37178777837"
GROUP BY conso_ht.Date_conso
ORDER BY year(conso_ht.Date_conso) ASC , month(conso_ht.Date_conso) ASC
использовать : СГРУППИРОВАТЬ ПО году(conso_ht.Date_conso) , месяцу(conso_ht.Date_conso) ПОРЯДОК ПО году(conso_ht.Date_conso) ASC, месяцу(conso_ht.Date_conso) ASC;