mysql遇到的坑

sql_mode=NO_ENGINE_SUBSTITUTION

 今天在測試庫上發現使用GROUP BY 報錯,我使用的mysql5.7 html

ONLY_FULL_GROUP_BY 對於GROUP BY聚合操做,若是在SELECT中的列、HAVING或者ORDER BY子句的列,沒有在GROUP BY中出現,那麼這個SQL是不合法的。是能夠理解的,由於不在 group by 的列查出來展現會有矛盾。
在5.7中默認啓用ONLY_FULL_GROUP_BY 而不是sql_mode=NO_ENGINE_SUBSTITUTION,因此在5.6升級到5.7的過程須要注意。mysql

一些小坑的配置都在sql_mode  必定要了解本身使用的版本對應的配置sql

參考文檔:https://segmentfault.com/a/1190000005936172segmentfault

官方文檔:https://dev.mysql.com/doc/refman/5.6/en/sql-mode.html測試

 

 

記一個新數據遷移的sqlcode

INSERT INTO 庫A.表A
        ( 表A.`id`, 表A.`name`)
        ( SELECT 表B.`number`, 表B.`title` FROM 庫B.表B )
相關文章
相關標籤/搜索