Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | More test cases for OR-optimization covering indices. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | multi-or-covering-index |
Files: | files | file ages | folders |
SHA1: |
e5c3190c27b69dc50f348c849a81b790 |
User & Date: | drh 2012-08-24 17:52:54.133 |
Context
2012-08-24
| ||
18:44 | Fix a problem to do with multi-or queries and automatic indexes. (check-in: a3e26038a1 user: dan tags: multi-or-covering-index) | |
17:52 | More test cases for OR-optimization covering indices. (check-in: e5c3190c27 user: drh tags: multi-or-covering-index) | |
15:29 | Additional test cases for OR-optimization with covering indices, including one test case that currently fails. (check-in: d8b7ab3712 user: drh tags: multi-or-covering-index) | |
Changes
Changes to test/whereD.test.
︙ | ︙ | |||
19 20 21 22 23 24 25 | set ::testprefix whereD do_execsql_test 1.1 { CREATE TABLE t(i,j,k,m,n); CREATE INDEX ijk ON t(i,j,k); CREATE INDEX jmn ON t(j,m,n); | | | | | > > > > > > > > > | > > > | | > > > | > > > | > > > > > > | 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 | set ::testprefix whereD do_execsql_test 1.1 { CREATE TABLE t(i,j,k,m,n); CREATE INDEX ijk ON t(i,j,k); CREATE INDEX jmn ON t(j,m,n); INSERT INTO t VALUES(3, 3, 'three', 3, 'tres'); INSERT INTO t VALUES(2, 2, 'two', 2, 'dos'); INSERT INTO t VALUES(1, 1, 'one', 1, 'uno'); INSERT INTO t VALUES(4, 4, 'four', 4, 'cuatro'); } do_execsql_test 1.2 { SELECT k FROM t WHERE (i=1 AND j=1) OR (i=2 AND j=2); } {one two} do_execsql_test 1.3 { SELECT k FROM t WHERE (i=1 AND j=1) OR (+i=2 AND j=2); } {one two} do_execsql_test 1.4 { SELECT n FROM t WHERE (i=1 AND j=1) OR (i=2 AND j=2); } {uno dos} do_execsql_test 1.5 { SELECT k, n FROM t WHERE (i=1 AND j=1) OR (i=2 AND j=2); } {one uno two dos} do_execsql_test 1.6 { SELECT k FROM t WHERE (i=1 AND j=1) OR (i=2 AND j=2) OR (i=3 AND j=3); } {one two three} do_execsql_test 1.7 { SELECT n FROM t WHERE (i=1 AND j=1) OR (i=2 AND j=2) OR (i=3 AND j=3); } {uno dos tres} do_execsql_test 1.8 { SELECT k FROM t WHERE (i=1 AND j=1) OR (j=2 AND m=2); } {one two} do_execsql_test 1.9 { SELECT k FROM t WHERE (i=1 AND j=1) OR (i=2 AND j=2) OR (j=3 AND m=3); } {one two three} do_execsql_test 1.10 { SELECT n FROM t WHERE (i=1 AND j=1) OR (i=2 AND j=2) OR (j=3 AND m=3); } {uno dos tres} do_execsql_test 1.11 { SELECT k FROM t WHERE (i=1 AND j=1) OR (j=2 AND m=2) OR (i=3 AND j=3); } {one two three} do_execsql_test 1.12 { SELECT n FROM t WHERE (i=1 AND j=1) OR (j=2 AND m=2) OR (i=3 AND j=3); } {uno dos tres} do_execsql_test 1.13 { SELECT k FROM t WHERE (j=1 AND m=1) OR (i=2 AND j=2) OR (i=3 AND j=3); } {one two three} do_execsql_test 1.14 { SELECT k FROM t WHERE (i=1 AND j=1) OR (j=2 AND i=2) OR (i=3 AND j=3); } {one two three} do_execsql_test 1.15 { SELECT k FROM t WHERE (i=1 AND j=2) OR (i=2 AND j=1) OR (i=3 AND j=4); } {} do_execsql_test 1.16 { SELECT k FROM t WHERE (i=1 AND (j=1 or j=2)) OR (i=3 AND j=3); } {one three} do_execsql_test 2.0 { CREATE TABLE t1(a,b,c,d); CREATE INDEX t1b ON t1(b); CREATE INDEX t1c ON t1(c); CREATE INDEX t1d ON t1(d); CREATE TABLE t2(x,y); |
︙ | ︙ |