MySql ???? ??? ?? ONLY_FULL_GROUP_BY
? ????.
Mysql ?? 5.7.5?? ?? : SQL ??? ????? ?????? ONLY_FULL_GROUP_BY
.
?? 5.7.5 ?? : ????? ????? ?? ???? ONLY_FULL_GROUP_BY
.
SQL ??? ???? ??(?? 5.7.5?? ????? ????), MySQL? ?? ?? ??, HAVING
?? ?? non? ???? ORDER BY
??? ?????. -?? ?, ? ?? GROUP BY
?? ??? ????? ??? ?? ????? ????. ONLY_FULL_GROUP_BY
SQL模式(從版本5.7.5開始默認(rèn)啟用),MySQL將拒絕查詢選擇列表、HAVING
條件或ORDER BY
列表引用非聚合列,這些列既不在GROUP BY
(1) PHPMyAdmin
Disabled: ??ONLY_FULL_GROUP_BY
sql ??
??? ???? ??? textsql mode
變量并從值中刪除ONLY_FULL_GROUP_BY
? ?????.
??
(2) SQL/?? ????
?? ??? ???? ???????: mode. ONLY_FULL_GROUP_BY
????
??
(3) SELECT *
? ???? ???.
??? ?????? ?? ?? ONLY_FULL_GROUP_BY
?) ? SELECT
查詢中使用相關(guān)列。相關(guān)列指的是在group by
子句中出現(xiàn)的列或帶有聚合函數(shù)(MAX
、MIN
、SUM
、COUNT
? ???? ??? ??? ????? ???? ??? ???? ??? ?????. point(1)或point(2)
)?? ?? ???? ???. [mysqld]
部分的/etc/mysql/my.cnf
???: /etc/mysql/my.cnf
?? ??: sql_mode
或者 sql-mode
??
sql-mode
??? ??? ??ONLY_FULL_GROUP_BY
??sql_mode
:
??
? ??? ?? ??? ???? MySQL?? SQL ??? ???? ??? ?????.
??????? ??? ??... ? ????? ??? ??? ??? ? SQL ??? only_full_group_by? ??????.
?? ??? GROUP BY ?? SELECT ??? ??? ?? ?? ?????. sql_mode? ???? ??? ?? ?? ? ????.
?????... :-)
???? ??: 2023? 7? 14?
SQL ???? ???? ?? ?? ????? ???? ?? ??? ?? ?? ??? ?? (SELECT *...) ?? ???? ?? ?? @Tim Biegeleisen? ???? ???? ??? ??? ?? ?? ??? ???? ????. https://stackoverflow.com/a/41887524/3602846
? ?? ??