48 lines
1.3 KiB
SQL
48 lines
1.3 KiB
SQL
# name: test/sql/explain/test_explain.test
|
|
# description: Test explain
|
|
# group: [explain]
|
|
|
|
statement ok
|
|
PRAGMA enable_verification
|
|
|
|
statement ok
|
|
CREATE TABLE integers(i INTEGER, j INTEGER)
|
|
|
|
statement ok
|
|
INSERT INTO integers VALUES (1, 1), (2, 2), (3, 3), (NULL, NULL)
|
|
|
|
statement ok
|
|
EXPLAIN SELECT * FROM integers
|
|
|
|
statement ok
|
|
EXPLAIN select sum(i), j, sum(i), j from integers group by j having j < 10;
|
|
|
|
statement ok
|
|
EXPLAIN update integers set i=i+1;
|
|
|
|
statement ok
|
|
EXPLAIN delete from integers where i=1;
|
|
|
|
statement ok
|
|
pragma explain_output='optimized_only'
|
|
|
|
query II
|
|
EXPLAIN (FORMAT JSON) SELECT SUM(i) FROM (SELECT * FROM integers i1, integers i2 UNION ALL SELECT * FROM integers i1, integers i2);
|
|
----
|
|
logical_opt <REGEX>:.*"name": "CROSS_PRODUCT".*
|
|
|
|
query II
|
|
EXPLAIN (FORMAT HTML) SELECT SUM(i) FROM (SELECT * FROM integers i1, integers i2 UNION ALL SELECT * FROM integers i1, integers i2);
|
|
----
|
|
logical_opt <REGEX>:.*<div class="title">CROSS_PRODUCT</div>.*
|
|
|
|
query II
|
|
EXPLAIN (FORMAT GRAPHVIZ) SELECT SUM(i) FROM (SELECT * FROM integers i1, integers i2 UNION ALL SELECT * FROM integers i1, integers i2);
|
|
----
|
|
logical_opt <REGEX>:.*node_0_0 -> node_0_1;.*
|
|
|
|
query II
|
|
EXPLAIN (FORMAT YAML) SELECT SUM(i) FROM (SELECT * FROM integers i1, integers i2 UNION ALL SELECT * FROM integers i1, integers i2);
|
|
----
|
|
logical_opt <REGEX>:.*- name: "CROSS_PRODUCT".*
|