mirror of
https://github.com/sqlite/sqlite.git
synced 2025-07-29 08:01:23 +03:00
Clear the column cache before populating aggregate accumulator registers. Fix fo
r [883034dcb5]. FossilOrigin-Name: ffc23409c7fb45dc5a8722fad26e26d207bb3213
This commit is contained in:
@ -166,4 +166,48 @@ ifcapable trigger {
|
||||
} {1 {no such column: new.x}}
|
||||
}
|
||||
|
||||
# Check that ticket [883034dcb5] is fixed.
|
||||
#
|
||||
do_test selectC-3.1 {
|
||||
execsql {
|
||||
CREATE TABLE person (
|
||||
org_id TEXT NOT NULL,
|
||||
nickname TEXT NOT NULL,
|
||||
license TEXT,
|
||||
CONSTRAINT person_pk PRIMARY KEY (org_id, nickname),
|
||||
CONSTRAINT person_license_uk UNIQUE (license)
|
||||
);
|
||||
INSERT INTO person VALUES('meyers', 'jack', '2GAT123');
|
||||
INSERT INTO person VALUES('meyers', 'hill', 'V345FMP');
|
||||
INSERT INTO person VALUES('meyers', 'jim', '2GAT138');
|
||||
INSERT INTO person VALUES('smith', 'maggy', '');
|
||||
INSERT INTO person VALUES('smith', 'jose', 'JJZ109');
|
||||
INSERT INTO person VALUES('smith', 'jack', 'THX138');
|
||||
INSERT INTO person VALUES('lakeside', 'dave', '953OKG');
|
||||
INSERT INTO person VALUES('lakeside', 'amy', NULL);
|
||||
INSERT INTO person VALUES('lake-apts', 'tom', NULL);
|
||||
INSERT INTO person VALUES('acorn', 'hideo', 'CQB421');
|
||||
|
||||
SELECT
|
||||
org_id,
|
||||
count((NOT (org_id IS NULL)) AND (NOT (nickname IS NULL)))
|
||||
FROM person
|
||||
WHERE (CASE WHEN license != '' THEN 1 ELSE 0 END)
|
||||
GROUP BY 1;
|
||||
}
|
||||
} {acorn 1 lakeside 1 meyers 3 smith 2}
|
||||
do_test selectC-3.2 {
|
||||
execsql {
|
||||
CREATE TABLE t2(a PRIMARY KEY, b);
|
||||
INSERT INTO t2 VALUES('abc', 'xxx');
|
||||
INSERT INTO t2 VALUES('def', 'yyy');
|
||||
SELECT a, max(b || a) FROM t2 WHERE (b||b||b)!='value' GROUP BY a;
|
||||
}
|
||||
} {abc xxxabc def yyydef}
|
||||
do_test selectC-3.3 {
|
||||
execsql {
|
||||
SELECT b, max(a || b) FROM t2 WHERE (b||b||b)!='value' GROUP BY a;
|
||||
}
|
||||
} {xxx abcxxx yyy defyyy}
|
||||
|
||||
finish_test
|
||||
|
Reference in New Issue
Block a user