mirror of
https://github.com/sqlite/sqlite.git
synced 2025-07-29 08:01:23 +03:00
Ensure that queries like "SELECT indeterministic(a) FROM tbl GROUP BY 1" invoke the indeterministic function only once for each row of tbl.
FossilOrigin-Name: 4555d66547e28cb110e1012b145bcf3aafb5d4bde05e9d27bcb4ca33837b28f5
This commit is contained in:
@ -313,4 +313,27 @@ do_execsql_test 4020 {
|
||||
SELECT b FROM t1 UNION SELECT 1;
|
||||
} {1 { }}
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
reset_db
|
||||
do_execsql_test 5010 {
|
||||
CREATE TABLE cnt(a);
|
||||
WITH RECURSIVE cnt2(x) AS (
|
||||
VALUES(1) UNION ALL SELECT x+1 FROM cnt2 WHERE x<50
|
||||
)
|
||||
INSERT INTO cnt SELECT x FROM cnt2;
|
||||
}
|
||||
|
||||
do_execsql_test 5020 {
|
||||
SELECT DISTINCT abs(random())%5 AS r FROM cnt ORDER BY r;
|
||||
} {0 1 2 3 4}
|
||||
|
||||
do_execsql_test 5030 {
|
||||
SELECT abs(random())%5 AS r FROM cnt GROUP BY 1 ORDER BY 1;
|
||||
} {0 1 2 3 4}
|
||||
|
||||
do_execsql_test 5040 {
|
||||
SELECT a FROM cnt WHERE a>45 GROUP BY 1;
|
||||
} {46 47 48 49 50}
|
||||
|
||||
finish_test
|
||||
|
Reference in New Issue
Block a user