mirror of
https://github.com/sqlite/sqlite.git
synced 2025-07-27 20:41:58 +03:00
Fix test cases so that they work with the new EXPLAIN QUERY PLAN output
format. Only some of the cases have been fixed. This is an incremental check-in. FossilOrigin-Name: 5f0e803e33aa557865d5fc830d9202d628de9a94c9757058ca48f1a560702cd3
This commit is contained in:
@ -184,34 +184,33 @@ ifcapable stat4 {
|
||||
ANALYZE;
|
||||
}
|
||||
|
||||
do_eqp_test 3.1.1 { SELECT * FROM c1 WHERE a=1 AND c=2 } {
|
||||
0 0 0 {SEARCH TABLE c1 USING INDEX c1cd (c=?)}
|
||||
}
|
||||
do_eqp_test 3.1.2 { SELECT * FROM c1 WHERE a=1 AND b>'d' AND c=2 } {
|
||||
0 0 0 {SEARCH TABLE c1 USING INDEX c1cd (c=?)}
|
||||
}
|
||||
do_eqp_test 3.1.3 { SELECT * FROM c1 WHERE a=1 AND b>'l' AND c=2 } {
|
||||
0 0 0 {SEARCH TABLE c1 USING INDEX c1ab (a=? AND b>?)}
|
||||
}
|
||||
do_eqp_test 3.1.1 { SELECT * FROM c1 WHERE a=1 AND c=2 } \
|
||||
{SEARCH TABLE c1 USING INDEX c1cd (c=?)}
|
||||
|
||||
do_eqp_test 3.1.2 { SELECT * FROM c1 WHERE a=1 AND b>'d' AND c=2 } \
|
||||
{SEARCH TABLE c1 USING INDEX c1cd (c=?)}
|
||||
|
||||
do_eqp_test 3.1.3 { SELECT * FROM c1 WHERE a=1 AND b>'l' AND c=2 } \
|
||||
{SEARCH TABLE c1 USING INDEX c1ab (a=? AND b>?)}
|
||||
|
||||
do_eqp_test 3.2.1 { SELECT * FROM c1 WHERE a=1 AND c>1 } \
|
||||
{SEARCH TABLE c1 USING INDEX c1cd (c>?)}
|
||||
|
||||
do_eqp_test 3.2.2 { SELECT * FROM c1 WHERE a=1 AND c>0 } \
|
||||
{SEARCH TABLE c1 USING INDEX c1ab (a=?)}
|
||||
|
||||
do_eqp_test 3.2.3 { SELECT * FROM c1 WHERE a=1 AND c>=1 } \
|
||||
{SEARCH TABLE c1 USING INDEX c1ab (a=?)}
|
||||
|
||||
do_eqp_test 3.2.4 { SELECT * FROM c1 WHERE a=1 AND (c, d)>(1, 'c') } \
|
||||
{SEARCH TABLE c1 USING INDEX c1ab (a=?)}
|
||||
|
||||
do_eqp_test 3.2.5 { SELECT * FROM c1 WHERE a=1 AND (c, d)>(1, 'o') } \
|
||||
{SEARCH TABLE c1 USING INDEX c1cd ((c,d)>(?,?))}
|
||||
|
||||
do_eqp_test 3.2.6 { SELECT * FROM c1 WHERE a=1 AND (c, +b)>(1, 'c') } \
|
||||
{SEARCH TABLE c1 USING INDEX c1ab (a=?)}
|
||||
|
||||
do_eqp_test 3.2.1 { SELECT * FROM c1 WHERE a=1 AND c>1 } {
|
||||
0 0 0 {SEARCH TABLE c1 USING INDEX c1cd (c>?)}
|
||||
}
|
||||
do_eqp_test 3.2.2 { SELECT * FROM c1 WHERE a=1 AND c>0 } {
|
||||
0 0 0 {SEARCH TABLE c1 USING INDEX c1ab (a=?)}
|
||||
}
|
||||
do_eqp_test 3.2.3 { SELECT * FROM c1 WHERE a=1 AND c>=1 } {
|
||||
0 0 0 {SEARCH TABLE c1 USING INDEX c1ab (a=?)}
|
||||
}
|
||||
do_eqp_test 3.2.4 { SELECT * FROM c1 WHERE a=1 AND (c, d)>(1, 'c') } {
|
||||
0 0 0 {SEARCH TABLE c1 USING INDEX c1ab (a=?)}
|
||||
}
|
||||
do_eqp_test 3.2.5 { SELECT * FROM c1 WHERE a=1 AND (c, d)>(1, 'o') } {
|
||||
0 0 0 {SEARCH TABLE c1 USING INDEX c1cd ((c,d)>(?,?))}
|
||||
}
|
||||
do_eqp_test 3.2.6 { SELECT * FROM c1 WHERE a=1 AND (c, +b)>(1, 'c') } {
|
||||
0 0 0 {SEARCH TABLE c1 USING INDEX c1ab (a=?)}
|
||||
}
|
||||
}
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
@ -234,11 +233,12 @@ do_eqp_test 5.1 {
|
||||
(a, b) IN (SELECT x, y FROM d1) AND
|
||||
(c) IN (SELECT y FROM d1)
|
||||
} {
|
||||
0 0 0 {SEARCH TABLE d2 USING INDEX d2ab (a=? AND b=?)}
|
||||
0 0 0 {EXECUTE LIST SUBQUERY 1}
|
||||
1 0 0 {SCAN TABLE d1}
|
||||
0 0 0 {EXECUTE LIST SUBQUERY 2}
|
||||
2 0 0 {SCAN TABLE d1}
|
||||
QUERY PLAN
|
||||
|--SEARCH TABLE d2 USING INDEX d2ab (a=? AND b=?)
|
||||
|--LIST SUBQUERY
|
||||
| `--SCAN TABLE d1
|
||||
`--LIST SUBQUERY
|
||||
`--SCAN TABLE d1
|
||||
}
|
||||
|
||||
do_execsql_test 6.0 {
|
||||
@ -249,31 +249,23 @@ do_execsql_test 6.0 {
|
||||
|
||||
do_eqp_test 6.1 {
|
||||
SELECT * FROM e1 WHERE (a, b) > (?, ?)
|
||||
} {
|
||||
0 0 0 {SEARCH TABLE e1 USING INDEX e1ab ((a,b)>(?,?))}
|
||||
}
|
||||
} {SEARCH TABLE e1 USING INDEX e1ab ((a,b)>(?,?))}
|
||||
|
||||
do_eqp_test 6.2 {
|
||||
SELECT * FROM e1 WHERE (a, b) < (?, ?)
|
||||
} {
|
||||
0 0 0 {SEARCH TABLE e1 USING INDEX e1ab ((a,b)<(?,?))}
|
||||
}
|
||||
} {SEARCH TABLE e1 USING INDEX e1ab ((a,b)<(?,?))}
|
||||
|
||||
do_eqp_test 6.3 {
|
||||
SELECT * FROM e1 WHERE c = ? AND (d, e) > (?, ?)
|
||||
} {
|
||||
0 0 0 {SEARCH TABLE e1 USING INDEX e1cde (c=? AND (d,e)>(?,?))}
|
||||
}
|
||||
} {SEARCH TABLE e1 USING INDEX e1cde (c=? AND (d,e)>(?,?))}
|
||||
|
||||
do_eqp_test 6.4 {
|
||||
SELECT * FROM e1 WHERE c = ? AND (d, e) < (?, ?)
|
||||
} {
|
||||
0 0 0 {SEARCH TABLE e1 USING INDEX e1cde (c=? AND (d,e)<(?,?))}
|
||||
}
|
||||
} {SEARCH TABLE e1 USING INDEX e1cde (c=? AND (d,e)<(?,?))}
|
||||
|
||||
do_eqp_test 6.5 {
|
||||
SELECT * FROM e1 WHERE (d, e) BETWEEN (?, ?) AND (?, ?) AND c = ?
|
||||
} {
|
||||
0 0 0
|
||||
{SEARCH TABLE e1 USING INDEX e1cde (c=? AND (d,e)>(?,?) AND (d,e)<(?,?))}
|
||||
}
|
||||
} {SEARCH TABLE e1 USING INDEX e1cde (c=? AND (d,e)>(?,?) AND (d,e)<(?,?))}
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
|
||||
|
Reference in New Issue
Block a user