0
我不是DB人,我無法理解爲什麼這個簡單的案例在5.6上完美工作,但在5.7奇怪的方式失敗。奇怪的組/在MySQL中的排序行爲5.7
使用案例:獲得收視率最高的喜劇列表中包含標題,作者的一些信息一起...
只要我只選擇非文本colunm,然後將其排序正確
SELECT c.id, c.title IF(AVG(r.score) IS NOT NULL, AVG(r.score), 0) as `rateScore`, COUNT(r.`entityId`) as `rateCount`
FROM `manga_comic` as c
LEFT JOIN `base_rate` as r
ON(r.`entityType` = 'comic' AND c.id = r.`entityId`)
GROUP BY c.`id`
ORDER BY `rateScore` DESC, rateCount DESC
添加「c.description」之類的文本列將忽略rateScore,而rate rateCount。
再一次,我只有5.7(或者可能是一些混亂的配置)。我希望不要因爲升級到MySQL而重新編碼很多屏幕5.7
可能重複之前(HTTP://計算器。 com/questions/37089347/is-there-any-value-capability-for-mysql-5-6) – e4c5
是否在select和group by中添加了text列? – xQbert
@ e4c5:這是一些「嚴重」的快速回復,它看起來很有希望,謝謝 –