Loading mysql-test/r/ansi.result +2 −2 Original line number Diff line number Diff line Loading @@ -6,7 +6,7 @@ NO_FIELD_OPTIONS,MYSQL40 set @@sql_mode="ANSI"; select @@sql_mode; @@sql_mode REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ONLY_FULL_GROUP_BY,ANSI REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ANSI SELECT 'A' || 'B'; 'A' || 'B' AB Loading @@ -14,6 +14,6 @@ CREATE TABLE t1 (id INT, id2 int); SELECT id,NULL,1,1.1,'a' FROM t1 GROUP BY id; id NULL 1 1.1 a SELECT id FROM t1 GROUP BY id2; ERROR 42000: 'test.t1.id' isn't in GROUP BY id drop table t1; SET @@SQL_MODE=""; mysql-test/t/ansi.test +2 −1 Original line number Diff line number Diff line Loading @@ -19,7 +19,8 @@ SELECT 'A' || 'B'; CREATE TABLE t1 (id INT, id2 int); SELECT id,NULL,1,1.1,'a' FROM t1 GROUP BY id; --error 1055 #No --error 1055 error due to temporary fix for BUG#8510: #ONLY_FULL_GROUP_BY is overly restrictive, so remove it from ANSI mode. SELECT id FROM t1 GROUP BY id2; drop table t1; Loading sql/set_var.cc +7 −1 Original line number Diff line number Diff line Loading @@ -3105,8 +3105,14 @@ ulong fix_sql_mode(ulong sql_mode) */ if (sql_mode & MODE_ANSI) { sql_mode|= (MODE_REAL_AS_FLOAT | MODE_PIPES_AS_CONCAT | MODE_ANSI_QUOTES | MODE_IGNORE_SPACE | MODE_ONLY_FULL_GROUP_BY); MODE_IGNORE_SPACE); /* MODE_ONLY_FULL_GROUP_BY removed from ANSI mode because it is currently overly restrictive (see BUG#8510). */ } if (sql_mode & MODE_ORACLE) sql_mode|= (MODE_PIPES_AS_CONCAT | MODE_ANSI_QUOTES | MODE_IGNORE_SPACE | Loading Loading
mysql-test/r/ansi.result +2 −2 Original line number Diff line number Diff line Loading @@ -6,7 +6,7 @@ NO_FIELD_OPTIONS,MYSQL40 set @@sql_mode="ANSI"; select @@sql_mode; @@sql_mode REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ONLY_FULL_GROUP_BY,ANSI REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ANSI SELECT 'A' || 'B'; 'A' || 'B' AB Loading @@ -14,6 +14,6 @@ CREATE TABLE t1 (id INT, id2 int); SELECT id,NULL,1,1.1,'a' FROM t1 GROUP BY id; id NULL 1 1.1 a SELECT id FROM t1 GROUP BY id2; ERROR 42000: 'test.t1.id' isn't in GROUP BY id drop table t1; SET @@SQL_MODE="";
mysql-test/t/ansi.test +2 −1 Original line number Diff line number Diff line Loading @@ -19,7 +19,8 @@ SELECT 'A' || 'B'; CREATE TABLE t1 (id INT, id2 int); SELECT id,NULL,1,1.1,'a' FROM t1 GROUP BY id; --error 1055 #No --error 1055 error due to temporary fix for BUG#8510: #ONLY_FULL_GROUP_BY is overly restrictive, so remove it from ANSI mode. SELECT id FROM t1 GROUP BY id2; drop table t1; Loading
sql/set_var.cc +7 −1 Original line number Diff line number Diff line Loading @@ -3105,8 +3105,14 @@ ulong fix_sql_mode(ulong sql_mode) */ if (sql_mode & MODE_ANSI) { sql_mode|= (MODE_REAL_AS_FLOAT | MODE_PIPES_AS_CONCAT | MODE_ANSI_QUOTES | MODE_IGNORE_SPACE | MODE_ONLY_FULL_GROUP_BY); MODE_IGNORE_SPACE); /* MODE_ONLY_FULL_GROUP_BY removed from ANSI mode because it is currently overly restrictive (see BUG#8510). */ } if (sql_mode & MODE_ORACLE) sql_mode|= (MODE_PIPES_AS_CONCAT | MODE_ANSI_QUOTES | MODE_IGNORE_SPACE | Loading