mirror of
https://github.com/sqlite/sqlite.git
synced 2025-07-29 08:01:23 +03:00
Show the creation of IN-operator Bloom filters in the EXPLAIN QUERY PLAN output.
FossilOrigin-Name: c10a1b99d47a4c93bdb16e646f6a21add570d6dbb34fd91a32f8abacdb28712b
This commit is contained in:
@ -275,14 +275,17 @@ do_eqp_test 6.1 {
|
||||
| | `--LIST SUBQUERY xxxxxx
|
||||
| | |--MATERIALIZE k
|
||||
| | | `--SCAN 3 CONSTANT ROWS
|
||||
| | `--SCAN k
|
||||
| | |--SCAN k
|
||||
| | `--CREATE BLOOM FILTER
|
||||
| `--UNION ALL
|
||||
| |--SEARCH t02 USING INDEX t02x (w=? AND x=? AND y>? AND y<?)
|
||||
| `--LIST SUBQUERY xxxxxx
|
||||
| `--SCAN k
|
||||
| |--SCAN k
|
||||
| `--CREATE BLOOM FILTER
|
||||
|--SEARCH t0
|
||||
`--LIST SUBQUERY xxxxxx
|
||||
`--SCAN k
|
||||
|--SCAN k
|
||||
`--CREATE BLOOM FILTER
|
||||
}
|
||||
# ^^^^--- The key feature above is that the SEARCH for each subquery
|
||||
# uses all three fields of the index w, x, and y. Prior to the push-down
|
||||
@ -300,18 +303,21 @@ do_eqp_test 6.2 {
|
||||
| | `--LIST SUBQUERY xxxxxx
|
||||
| | |--CO-ROUTINE v1
|
||||
| | | `--SCAN 3 CONSTANT ROWS
|
||||
| | `--SCAN v1
|
||||
| | |--SCAN v1
|
||||
| | `--CREATE BLOOM FILTER
|
||||
| `--UNION ALL
|
||||
| |--SEARCH t02 USING INDEX t02x (w=? AND x=? AND y>? AND y<?)
|
||||
| `--LIST SUBQUERY xxxxxx
|
||||
| |--CO-ROUTINE v1
|
||||
| | `--SCAN 3 CONSTANT ROWS
|
||||
| `--SCAN v1
|
||||
| |--SCAN v1
|
||||
| `--CREATE BLOOM FILTER
|
||||
|--SEARCH t0
|
||||
`--LIST SUBQUERY xxxxxx
|
||||
|--CO-ROUTINE v1
|
||||
| `--SCAN 3 CONSTANT ROWS
|
||||
`--SCAN v1
|
||||
|--SCAN v1
|
||||
`--CREATE BLOOM FILTER
|
||||
}
|
||||
do_eqp_test 6.3 {
|
||||
SELECT max(z) FROM t0 WHERE w=123 AND x IN k1 AND y BETWEEN 44 AND 55;
|
||||
@ -322,14 +328,17 @@ do_eqp_test 6.3 {
|
||||
| |--LEFT-MOST SUBQUERY
|
||||
| | |--SEARCH t01 USING INDEX t01x (w=? AND x=? AND y>? AND y<?)
|
||||
| | `--LIST SUBQUERY xxxxxx
|
||||
| | `--SCAN k1
|
||||
| | |--SCAN k1
|
||||
| | `--CREATE BLOOM FILTER
|
||||
| `--UNION ALL
|
||||
| |--SEARCH t02 USING INDEX t02x (w=? AND x=? AND y>? AND y<?)
|
||||
| `--LIST SUBQUERY xxxxxx
|
||||
| `--SCAN k1
|
||||
| |--SCAN k1
|
||||
| `--CREATE BLOOM FILTER
|
||||
|--SEARCH t0
|
||||
`--LIST SUBQUERY xxxxxx
|
||||
`--SCAN k1
|
||||
|--SCAN k1
|
||||
`--CREATE BLOOM FILTER
|
||||
}
|
||||
|
||||
finish_test
|
||||
|
Reference in New Issue
Block a user