mirror of
https://github.com/sqlite/sqlite.git
synced 2025-07-30 19:03:16 +03:00
Fix a problem causing the count(*) optimization to be misapplied in some cases where an aggregate sub-query uses a count() expression that is aggregated against the outer query.
FossilOrigin-Name: e30917278c0ec750b1756ddc5e32d65c55464531d6ef64d2e72a412dfe634f58
This commit is contained in:
@ -233,5 +233,16 @@ do_eqp_test count-7.4 {
|
||||
`--SCAN t1
|
||||
}
|
||||
|
||||
do_execsql_test count-8.0 {
|
||||
CREATE TABLE t7(a INT,b TEXT,c BLOB,d REAL);
|
||||
CREATE TABLE t8(a INT,b TEXT,c BLOB,d REAL);
|
||||
CREATE INDEX t8a ON t8(a);
|
||||
}
|
||||
do_catchsql_test count-8.1 {
|
||||
SELECT * FROM t8 WHERE (a, b) IN (
|
||||
SELECT count(t8.b), count(*) FROM t7 AS ra0 ORDER BY count(*)
|
||||
) AND t8.b=0;
|
||||
} {1 {misuse of aggregate: count()}}
|
||||
|
||||
|
||||
finish_test
|
||||
|
Reference in New Issue
Block a user