Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SQL_MODE not considered for VIEWs #53175

Open
mjonss opened this issue May 10, 2024 · 1 comment
Open

SQL_MODE not considered for VIEWs #53175

mjonss opened this issue May 10, 2024 · 1 comment

Comments

@mjonss
Copy link
Contributor

mjonss commented May 10, 2024

Bug Report

Please answer these questions before submitting your issue. Thanks!

SQL_MODE is not used properly in views, like ONLY_FULL_GROUP_BY is not in effect.

See test case, where no warning is given for TiDB, while it is given for MySQL.

1. Minimal reproduce step (Required)

create table t (a int);
set @@sql_mode = default;
create view v as select * from t group by null;
select * from v;
set @@sql_mode = '';
select * from v;

2. What did you expect to see? (Required)

mysql> create table t (a int);
Query OK, 0 rows affected (0,02 sec)

mysql> set @@sql_mode = default;
Query OK, 0 rows affected (0,00 sec)

mysql> create view v as select * from t group by null;
Query OK, 0 rows affected (0,00 sec)

mysql> select * from v;
ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'test.t.a' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
mysql> set @@sql_mode = '';
Query OK, 0 rows affected (0,00 sec)

mysql> select * from v;
Empty set (0,00 sec)

3. What did you see instead (Required)

tidb> create table t (a int);
Query OK, 0 rows affected (0.08 sec)

tidb> set @@sql_mode = default;
Query OK, 0 rows affected (0.00 sec)

tidb> create view v as select * from t group by null;
Query OK, 0 rows affected (0.10 sec)

tidb> select * from v;
Empty set (0.00 sec)

tidb> set @@sql_mode = '';
Query OK, 0 rows affected (0.01 sec)

tidb> select * from v;
Empty set (0.01 sec)

4. What is your TiDB version? (Required)

tidb_version(): Release Version: v8.0.0
Edition: Community
Git Commit Hash: 8ba1fa452b1ccdbfb85879ea94b9254aabba2916
Git Branch: HEAD
UTC Build Time: 2024-03-28 14:22:34
GoVersion: go1.21.6
Race Enabled: false
Check Table Before Drop: false
Store: tikv
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants