Bug #79134 SQL statement can't run on MySQL 5.7 CentOS 7
| Submitted: | 5 Nov 2015 9:09 | Modified: | 12 Dec 2015 13:31 |
|---|---|---|---|
| Reporter: | weixing zou | Email Updates: | |
| Status: | No Feedback | Impact on me: | |
| Category: | MySQL Server | Severity: | S2 (Serious) |
| Version: | 5.7 | OS: | CentOS (7.1) |
| Assigned to: | CPU Architecture: | Any | |
| Tags: | SQL statement can't run on MySQL 5.7 for CentOS 7 | ||
[10 Nov 2015 13:38]
MySQL Verification Team
Thank you for the bug report. Please provide complete test case (Create table statement). Thanks.
[12 Nov 2015 13:27]
Peter Mørch
This is documented behaviour. From 5.7.5 SQL_MODE now by default contains: ONLY_FULL_GROUP_BY http://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_only_full_group_by You can fix your SELECTs (as I'm doing) or SET SQL_MODE="" or SET SQL_MODE=(SELECT REPLACE(@@SQL_MODE,'ONLY_FULL_GROUP_BY','')); Or whatever floats your boat. Beware, you'll probably be bitten by other things too. You may want to read http://dev.mysql.com/doc/refman/5.7/en/upgrading-from-previous-series.html
[12 Nov 2015 13:31]
MySQL Verification Team
Please try: SET SQL_MODE="" as suggested in prior comment. Thanks.
[13 Dec 2015 1:00]
Bugs System
No feedback was provided for this bug for over a month, so it is being suspended automatically. If you are able to provide the information that was originally requested, please do so and change the status of the bug back to "Open".
Portions of this website are copyright © 2001, 2002 The PHP Group
Page generated in 0.055 sec. using MySQL 8.4.7-u6-cloud
Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the
respective copyright holders.
It is not reviewed in advance
by Oracle and does not necessarily represent the opinion of
Oracle or any other party.
Description: run a not complex sql: SELECT DISTINCT banner1_.id AS id1_38_, banner1_.create_date AS create_d2_38_, banner1_.modify_date AS modify_d3_38_, banner1_.banner_type AS banner_t4_38_, banner1_.color_id AS color_i12_38_, banner1_.detail AS detail5_38_, banner1_.display_name AS display_6_38_, banner1_.extname AS extname7_38_, banner1_.icon AS icon8_38_, banner1_.lcaid AS lcaid9_38_, banner1_.status AS status10_38_, banner1_.type AS type11_38_ FROM xx_banner_scheduled_publish bannersche0_ INNER JOIN xx_banner banner1_ ON bannersche0_.banner_id=banner1_.id CROSS JOIN xx_banner banner2_ WHERE bannersche0_.banner_id=banner2_.id AND banner2_.status=1 ORDER BY bannersche0_.order_list; [Err] 3065 - Expression #1 of ORDER BY clause is not in SELECT list, references column 'game.bannersche0_.order_list' which is not in SELECT list; this is incompatible with DISTINCT But this statement can run under MySQL 5.6 and MySQL 5.7 for centos 6. why? How to repeat: run it on MySQL 5.7 for CentOS 7 Suggested fix: any difference between MySQL 5.7 for rhel 6 and rhel 7?