1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-07-30 19:03:16 +03:00

Add extra test cases.

FossilOrigin-Name: 0a922d141749cf3ef672f56449001e03f1a7e31822b66dcaf8550bb6e1b88cd3
This commit is contained in:
dan
2022-03-16 19:28:18 +00:00
parent 2f3e34624a
commit 247d09462e
4 changed files with 58 additions and 10 deletions

View File

@ -85,7 +85,7 @@ foreach {tn sql bDistinct idxinsert bConsumed res} {
4 "SELECT DISTINCT b FROM vt1" 2 1 0 {b d}
5 "SELECT DISTINCT b FROM vt1 ORDER BY a" 0 1 1 {b d}
6 "SELECT DISTINCT t0.c0 FROM vt1, t0 ORDER BY vt1.a" 0 1 1 {1 0}
7 "SELECT DISTINCT a, b FROM vt1 ORDER BY a, b" 1 0 1 {a b c d}
7 "SELECT DISTINCT a, b FROM vt1 ORDER BY a, b" 3 0 1 {a b c d}
8 "SELECT DISTINCT a, b FROM vt1 ORDER BY a" 0 1 1 {a b c d}
9 "SELECT DISTINCT a FROM vt1 ORDER BY a, b" 0 1 1 {a c}

View File

@ -301,4 +301,52 @@ do_execsql_test 8.0 {
SELECT DISTINCT pid FROM person where pid = 10;
} {10}
#-------------------------------------------------------------------------
reset_db
do_execsql_test 9.0 {
CREATE TABLE t1(a, b);
INSERT INTO t1 VALUES('a', 'a');
INSERT INTO t1 VALUES('a', 'b');
INSERT INTO t1 VALUES('a', 'c');
INSERT INTO t1 VALUES('b', 'a');
INSERT INTO t1 VALUES('b', 'b');
INSERT INTO t1 VALUES('b', 'c');
INSERT INTO t1 VALUES('a', 'a');
INSERT INTO t1 VALUES('b', 'b');
INSERT INTO t1 VALUES('A', 'A');
INSERT INTO t1 VALUES('B', 'B');
}
foreach {tn idx} {
1 { }
2 { CREATE INDEX i1 ON t1(a, b); }
3 { CREATE INDEX i1 ON t1(b, a); }
4 { CREATE INDEX i1 ON t1(a COLLATE nocase, b COLLATE nocase); }
5 { CREATE INDEX i1 ON t1(b COLLATE nocase, a COLLATE nocase); }
} {
execsql { DROP INDEX IF EXISTS i1 }
execsql $idx
do_execsql_test 9.$tn.1 {
SELECT DISTINCT a, b FROM t1 ORDER BY a, b
} {
A A B B
a a a b a c
b a b b b c
}
do_execsql_test 9.$tn.1 {
SELECT DISTINCT a COLLATE nocase, b COLLATE nocase FROM t1
ORDER BY a COLLATE nocase, b COLLATE nocase
} {
a a a b a c
b a b b b c
}
}
finish_test