| Index: third_party/sqlite/sqlite-src-3100200/test/selectA.test
|
| diff --git a/third_party/sqlite/src/test/selectA.test b/third_party/sqlite/sqlite-src-3100200/test/selectA.test
|
| similarity index 95%
|
| copy from third_party/sqlite/src/test/selectA.test
|
| copy to third_party/sqlite/sqlite-src-3100200/test/selectA.test
|
| index 6e593e8e22b400d54fc944b868a141a701b05513..0338338902093da173ddf0015d03f5e614e86e3a 100644
|
| --- a/third_party/sqlite/src/test/selectA.test
|
| +++ b/third_party/sqlite/sqlite-src-3100200/test/selectA.test
|
| @@ -1375,4 +1375,64 @@ do_execsql_test 4.2.2 {
|
| } {/2 . 3 . 4 . 5 . 6 . 7 ./}
|
|
|
|
|
| +proc strip_rnd {explain} {
|
| + regexp -all {sqlite_sq_[0123456789ABCDEF]*} $explain sqlite_sq
|
| +}
|
| +
|
| +proc do_same_test {tn q1 args} {
|
| + set r2 [strip_rnd [db eval "EXPLAIN $q1"]]
|
| + set i 1
|
| + foreach q $args {
|
| + set tst [subst -nocommands {strip_rnd [db eval "EXPLAIN $q"]}]
|
| + uplevel do_test $tn.$i [list $tst] [list $r2]
|
| + incr i
|
| + }
|
| +}
|
| +
|
| +do_execsql_test 5.0 {
|
| + CREATE TABLE t8(a, b);
|
| + CREATE TABLE t9(c, d);
|
| +} {}
|
| +
|
| +do_same_test 5.1 {
|
| + SELECT a, b FROM t8 INTERSECT SELECT c, d FROM t9 ORDER BY a;
|
| +} {
|
| + SELECT a, b FROM t8 INTERSECT SELECT c, d FROM t9 ORDER BY t8.a;
|
| +} {
|
| + SELECT a, b FROM t8 INTERSECT SELECT c, d FROM t9 ORDER BY 1;
|
| +} {
|
| + SELECT a, b FROM t8 INTERSECT SELECT c, d FROM t9 ORDER BY c;
|
| +} {
|
| + SELECT a, b FROM t8 INTERSECT SELECT c, d FROM t9 ORDER BY t9.c;
|
| +}
|
| +
|
| +do_same_test 5.2 {
|
| + SELECT a, b FROM t8 UNION SELECT c, d FROM t9 ORDER BY a COLLATE NOCASE
|
| +} {
|
| + SELECT a, b FROM t8 UNION SELECT c, d FROM t9 ORDER BY t8.a COLLATE NOCASE
|
| +} {
|
| + SELECT a, b FROM t8 UNION SELECT c, d FROM t9 ORDER BY 1 COLLATE NOCASE
|
| +} {
|
| + SELECT a, b FROM t8 UNION SELECT c, d FROM t9 ORDER BY c COLLATE NOCASE
|
| +} {
|
| + SELECT a, b FROM t8 UNION SELECT c, d FROM t9 ORDER BY t9.c COLLATE NOCASE
|
| +}
|
| +
|
| +do_same_test 5.3 {
|
| + SELECT a, b FROM t8 EXCEPT SELECT c, d FROM t9 ORDER BY b, c COLLATE NOCASE
|
| +} {
|
| + SELECT a, b FROM t8 EXCEPT SELECT c, d FROM t9 ORDER BY 2, 1 COLLATE NOCASE
|
| +} {
|
| + SELECT a, b FROM t8 EXCEPT SELECT c, d FROM t9 ORDER BY d, a COLLATE NOCASE
|
| +} {
|
| + SELECT a, b FROM t8 EXCEPT SELECT * FROM t9 ORDER BY t9.d, c COLLATE NOCASE
|
| +} {
|
| + SELECT * FROM t8 EXCEPT SELECT c, d FROM t9 ORDER BY d, t8.a COLLATE NOCASE
|
| +}
|
| +
|
| +do_catchsql_test 5.4 {
|
| + SELECT * FROM t8 UNION SELECT * FROM t9 ORDER BY a+b COLLATE NOCASE
|
| +} {1 {1st ORDER BY term does not match any column in the result set}}
|
| +
|
| +
|
| finish_test
|
|
|