Синтаксическая ошибка с ASC, DESC с MySQL 8.0 - PullRequest
0 голосов
/ 28 марта 2019

Я недавно перенес устаревшую инфраструктуру своих клиентов, что повлекло за собой перемещение туда старой базы данных MySQL 5.0 в базу данных MySQL 8.0 (у нас были некоторые другие проблемы при переходе на Server 2016, что означало, что мы должны были это сделать)

Во всяком случае, клиент связался со мной сегодня, так как один из этих запросов не работает, и я не могу до конца разобраться.

Похоже, что следующая строка используется в большинстве / почти все запросы не работают.

GROUP BY L.GrowerID, L.DCropID, C.Variety, C.Crop, L.SizeID DESC, S.Size;

Полный запрос:

SELECT Cu.Customer, L.DCropID,  C.Crop, C.Variety,  D.Clone, G.Grower,
  S.Size, SUM(L.EndTubers) AS "Tubers", FORMAT(SUM(L.EndWeight),2) AS "Weight"
FROM PotatoLabels.Crop C, PotatoLabels.PLabel2012 L, PotatoLabels.Sizes S,
  PotatoLabels.DCrop D, PotatoLabels.Customers Cu, PotatoLabels.Growers G,
  PotatoLabels.mmGrades M
WHERE  (D.DCropID > 96534 AND Cu.CustomerID = 9 AND G.GrowerID = 1 )
  AND L.CustomerID = Cu.CustomerID
  AND D.DCropID = L.DCropID
  AND C.CropID = D.CropId
  AND L.SizeID = S.SizeID
  AND L.GrowerID = G.GrowerID
GROUP BY L.GrowerID, L.DCropID, C.Variety, C.Crop, L.SizeID DESC, S.Size;

Если я удалю GROUP BY L.GrowerID, L.DCropID, C.Variety, C.Crop, L.SizeID DESC, S.Size;

Возвращается с совершенно пустыми результатами, но работает без синтаксических ошибок.

Также стоит упомянуть, если я уберу ASC и (или) DESC, запрос будет выполняться без применения восходящей и нисходящей фильтрации - что немного лучше, не достаточно для моего клиента.

Пожалуйста, смотрите ниже синтаксические ошибки, которые я получаю при использовании некоторых ошибочных запросов.

[Err] 1064 - 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 'DESC, S.Size' at line 12

[Err] 1064 - 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, L.SizeID DESC WITH ROLLUP' at line 22

Я не эксперт по MySQL, он просто приземлился на моем столе ... Я уверен, что вы понимаете.

Любая помощь будет отличной.

...