Skip to content

use var_samp as window function cause unexpected error #52933

@r33s3n6

Description

@r33s3n6

Bug Report

When used with the OVER clause, var_samp functions as a window function. When there are non-aggregate columns present, it should not throw an error.
MySQL does not throw an error, and TiDB also does not throw errors for functions like var_pop and variance.

1. Minimal reproduce step (Required)

create table t1 (c1 int);
select c1, var_samp(c1) over (partition by c1) from t1;

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

Empty set (0.00 sec)

3. What did you see instead (Required)

ERROR 8123 (HY000): In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated column 'c1'; this is incompatible with sql_mode=only_full_group_by

4. What is your TiDB version? (Required)

Release Version: v8.0.0
Edition: Community
Git Commit Hash: 8ba1fa452b1ccdbfb85879ea94b9254aabba2916
Git Branch: HEAD
UTC Build Time: 2024-03-28 14:22:15
GoVersion: go1.21.4
Race Enabled: false
Check Table Before Drop: false
Store: tikv

Metadata

Metadata

Assignees

Labels

affects-6.5This bug affects the 6.5.x(LTS) versions.affects-7.1This bug affects the 7.1.x(LTS) versions.affects-7.5This bug affects the 7.5.x(LTS) versions.affects-8.1This bug affects the 8.1.x(LTS) versions.severity/majorsig/plannerSIG: Plannertype/bugThe issue is confirmed as a bug.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions