[MDEV-30446] Wrong result upon executing query with HAVING as a SELECT item Created: 2023-01-21  Updated: 2023-11-28

Status: Open
Project: MariaDB Server
Component/s: Optimizer
Affects Version/s: 10.3, 10.4, 10.5, 10.6, 10.7, 10.8, 10.9, 10.10, 10.11
Fix Version/s: 10.4, 10.5, 10.6, 10.11

Type: Bug Priority: Major
Reporter: Elena Stepanova Assignee: Sergei Petrunia
Resolution: Unresolved Votes: 0
Labels: 11.0-sel


 Description   

CREATE TABLE t (pk int PRIMARY KEY);
INSERT INTO t (pk) VALUES (1),(2),(3);
 
SELECT pk FROM t GROUP BY pk HAVING pk != 0 ORDER BY pk DESC LIMIT 1;
SELECT (SELECT pk FROM t GROUP BY pk HAVING pk != 0 ORDER BY pk DESC LIMIT 1) s;
 
# Cleanup
DROP TABLE t;

10.3 7a98d232

SELECT pk FROM t GROUP BY pk HAVING pk != 0 ORDER BY pk DESC LIMIT 1;
pk
3
SELECT (SELECT pk FROM t GROUP BY pk HAVING pk != 0 ORDER BY pk DESC LIMIT 1) s;
s
1

3 is the expected result.
Reproducible with at least MyISAM, InnoDB, Aria.


Generated at Thu Feb 08 10:16:19 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.