mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-10 09:32:06 +00:00
Merge pull request #48177 from ClickHouse/deprecate-explain-query-tree-with-disabled-analyzer
Deprecate EXPLAIN QUERY TREE with disabled analyzer.
This commit is contained in:
commit
b3d77c0c30
@ -41,6 +41,7 @@ namespace ErrorCodes
|
|||||||
extern const int INVALID_SETTING_VALUE;
|
extern const int INVALID_SETTING_VALUE;
|
||||||
extern const int UNKNOWN_SETTING;
|
extern const int UNKNOWN_SETTING;
|
||||||
extern const int LOGICAL_ERROR;
|
extern const int LOGICAL_ERROR;
|
||||||
|
extern const int NOT_IMPLEMENTED;
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
@ -386,6 +387,10 @@ QueryPipeline InterpreterExplainQuery::executeImpl()
|
|||||||
}
|
}
|
||||||
case ASTExplainQuery::QueryTree:
|
case ASTExplainQuery::QueryTree:
|
||||||
{
|
{
|
||||||
|
if (!getContext()->getSettingsRef().allow_experimental_analyzer)
|
||||||
|
throw Exception(ErrorCodes::NOT_IMPLEMENTED,
|
||||||
|
"EXPLAIN QUERY TREE is only supported with a new analyzer. Set allow_experimental_analyzer = 1.");
|
||||||
|
|
||||||
if (ast.getExplainedQuery()->as<ASTSelectWithUnionQuery>() == nullptr)
|
if (ast.getExplainedQuery()->as<ASTSelectWithUnionQuery>() == nullptr)
|
||||||
throw Exception(ErrorCodes::INCORRECT_QUERY, "Only SELECT is supported for EXPLAIN QUERY TREE query");
|
throw Exception(ErrorCodes::INCORRECT_QUERY, "Only SELECT is supported for EXPLAIN QUERY TREE query");
|
||||||
|
|
||||||
|
@ -62,49 +62,49 @@ SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explai
|
|||||||
|
|
||||||
--- EXPLAIN QUERY TREE
|
--- EXPLAIN QUERY TREE
|
||||||
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
||||||
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2 WHERE t1.a = t2.a);
|
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2 WHERE t1.a = t2.a SETTINGS allow_experimental_analyzer = 1);
|
||||||
|
|
||||||
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
||||||
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2 WHERE t1.b = t2.b);
|
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2 WHERE t1.b = t2.b SETTINGS allow_experimental_analyzer = 1);
|
||||||
|
|
||||||
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
||||||
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3 WHERE t1.a = t2.a AND t1.a = t3.a);
|
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3 WHERE t1.a = t2.a AND t1.a = t3.a SETTINGS allow_experimental_analyzer = 1);
|
||||||
|
|
||||||
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
||||||
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3 WHERE t1.b = t2.b AND t1.b = t3.b);
|
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3 WHERE t1.b = t2.b AND t1.b = t3.b SETTINGS allow_experimental_analyzer = 1);
|
||||||
|
|
||||||
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
||||||
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3, t4 WHERE t1.a = t2.a AND t1.a = t3.a AND t1.a = t4.a);
|
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3, t4 WHERE t1.a = t2.a AND t1.a = t3.a AND t1.a = t4.a SETTINGS allow_experimental_analyzer = 1);
|
||||||
|
|
||||||
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
||||||
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3, t4 WHERE t1.b = t2.b AND t1.b = t3.b AND t1.b = t4.b);
|
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3, t4 WHERE t1.b = t2.b AND t1.b = t3.b AND t1.b = t4.b SETTINGS allow_experimental_analyzer = 1);
|
||||||
|
|
||||||
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
||||||
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3, t4 WHERE t2.a = t1.a AND t2.a = t3.a AND t2.a = t4.a);
|
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3, t4 WHERE t2.a = t1.a AND t2.a = t3.a AND t2.a = t4.a SETTINGS allow_experimental_analyzer = 1);
|
||||||
|
|
||||||
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
||||||
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3, t4 WHERE t3.a = t1.a AND t3.a = t2.a AND t3.a = t4.a);
|
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3, t4 WHERE t3.a = t1.a AND t3.a = t2.a AND t3.a = t4.a SETTINGS allow_experimental_analyzer = 1);
|
||||||
|
|
||||||
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
||||||
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3, t4 WHERE t4.a = t1.a AND t4.a = t2.a AND t4.a = t3.a);
|
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3, t4 WHERE t4.a = t1.a AND t4.a = t2.a AND t4.a = t3.a SETTINGS allow_experimental_analyzer = 1);
|
||||||
|
|
||||||
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
||||||
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3, t4 WHERE t1.a = t2.a AND t2.a = t3.a AND t3.a = t4.a);
|
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3, t4 WHERE t1.a = t2.a AND t2.a = t3.a AND t3.a = t4.a SETTINGS allow_experimental_analyzer = 1);
|
||||||
|
|
||||||
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
||||||
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3, t4);
|
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2, t3, t4 SETTINGS allow_experimental_analyzer = 1);
|
||||||
|
|
||||||
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
||||||
EXPLAIN QUERY TREE SELECT t1.a FROM t1 CROSS JOIN t2 CROSS JOIN t3 CROSS JOIN t4);
|
EXPLAIN QUERY TREE SELECT t1.a FROM t1 CROSS JOIN t2 CROSS JOIN t3 CROSS JOIN t4 SETTINGS allow_experimental_analyzer = 1);
|
||||||
|
|
||||||
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
||||||
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2 CROSS JOIN t3);
|
EXPLAIN QUERY TREE SELECT t1.a FROM t1, t2 CROSS JOIN t3 SETTINGS allow_experimental_analyzer = 1);
|
||||||
|
|
||||||
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
||||||
EXPLAIN QUERY TREE SELECT t1.a FROM t1 JOIN t2 USING a CROSS JOIN t3);
|
EXPLAIN QUERY TREE SELECT t1.a FROM t1 JOIN t2 USING a CROSS JOIN t3 SETTINGS allow_experimental_analyzer = 1);
|
||||||
|
|
||||||
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
SELECT countIf(explain like '%COMMA%' OR explain like '%CROSS%'), countIf(explain like '%INNER%') FROM (
|
||||||
EXPLAIN QUERY TREE SELECT t1.a FROM t1 JOIN t2 ON t1.a = t2.a CROSS JOIN t3);
|
EXPLAIN QUERY TREE SELECT t1.a FROM t1 JOIN t2 ON t1.a = t2.a CROSS JOIN t3 SETTINGS allow_experimental_analyzer = 1);
|
||||||
|
|
||||||
INSERT INTO t1 values (1,1), (2,2), (3,3), (4,4);
|
INSERT INTO t1 values (1,1), (2,2), (3,3), (4,4);
|
||||||
INSERT INTO t2 values (1,1), (1, Null);
|
INSERT INTO t2 values (1,1), (1, Null);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
set optimize_group_by_function_keys = 1;
|
set optimize_group_by_function_keys = 1;
|
||||||
|
set allow_experimental_analyzer = 1;
|
||||||
|
|
||||||
-- { echoOn }
|
-- { echoOn }
|
||||||
SELECT round(avg(log(2) * number), 6) AS k FROM numbers(10000000) GROUP BY (number % 2) * (number % 3), number % 3, number % 2 HAVING avg(log(2) * number) > 3465735.3 ORDER BY k;
|
SELECT round(avg(log(2) * number), 6) AS k FROM numbers(10000000) GROUP BY (number % 2) * (number % 3), number % 3, number % 2 HAVING avg(log(2) * number) > 3465735.3 ORDER BY k;
|
||||||
|
@ -65,6 +65,7 @@ QUERY id: 0
|
|||||||
SORT id: 12, sort_direction: ASCENDING, with_fill: 0
|
SORT id: 12, sort_direction: ASCENDING, with_fill: 0
|
||||||
EXPRESSION
|
EXPRESSION
|
||||||
COLUMN id: 7, column_name: number, result_type: UInt64, source_id: 8
|
COLUMN id: 7, column_name: number, result_type: UInt64, source_id: 8
|
||||||
|
SETTINGS allow_experimental_analyzer=1
|
||||||
SELECT groupArray(x)
|
SELECT groupArray(x)
|
||||||
FROM
|
FROM
|
||||||
(
|
(
|
||||||
@ -98,6 +99,7 @@ QUERY id: 0
|
|||||||
SORT id: 12, sort_direction: ASCENDING, with_fill: 0
|
SORT id: 12, sort_direction: ASCENDING, with_fill: 0
|
||||||
EXPRESSION
|
EXPRESSION
|
||||||
COLUMN id: 7, column_name: number, result_type: UInt64, source_id: 8
|
COLUMN id: 7, column_name: number, result_type: UInt64, source_id: 8
|
||||||
|
SETTINGS allow_experimental_analyzer=1
|
||||||
SELECT groupArray(x)
|
SELECT groupArray(x)
|
||||||
FROM
|
FROM
|
||||||
(
|
(
|
||||||
@ -139,6 +141,7 @@ QUERY id: 0
|
|||||||
SORT id: 15, sort_direction: ASCENDING, with_fill: 0
|
SORT id: 15, sort_direction: ASCENDING, with_fill: 0
|
||||||
EXPRESSION
|
EXPRESSION
|
||||||
COLUMN id: 7, column_name: number, result_type: UInt64, source_id: 8
|
COLUMN id: 7, column_name: number, result_type: UInt64, source_id: 8
|
||||||
|
SETTINGS allow_experimental_analyzer=1
|
||||||
SELECT
|
SELECT
|
||||||
key,
|
key,
|
||||||
a,
|
a,
|
||||||
@ -200,6 +203,7 @@ QUERY id: 0
|
|||||||
SORT id: 25, sort_direction: ASCENDING, with_fill: 0
|
SORT id: 25, sort_direction: ASCENDING, with_fill: 0
|
||||||
EXPRESSION
|
EXPRESSION
|
||||||
COLUMN id: 26, column_name: key, result_type: UInt64, source_id: 5
|
COLUMN id: 26, column_name: key, result_type: UInt64, source_id: 5
|
||||||
|
SETTINGS allow_experimental_analyzer=1
|
||||||
SELECT
|
SELECT
|
||||||
key,
|
key,
|
||||||
a
|
a
|
||||||
@ -225,6 +229,7 @@ QUERY id: 0
|
|||||||
SORT id: 7, sort_direction: ASCENDING, with_fill: 0
|
SORT id: 7, sort_direction: ASCENDING, with_fill: 0
|
||||||
EXPRESSION
|
EXPRESSION
|
||||||
COLUMN id: 4, column_name: a, result_type: UInt8, source_id: 3
|
COLUMN id: 4, column_name: a, result_type: UInt8, source_id: 3
|
||||||
|
SETTINGS allow_experimental_analyzer=1
|
||||||
SELECT
|
SELECT
|
||||||
key,
|
key,
|
||||||
a
|
a
|
||||||
@ -257,6 +262,7 @@ QUERY id: 0
|
|||||||
LIST id: 11, nodes: 2
|
LIST id: 11, nodes: 2
|
||||||
COLUMN id: 2, column_name: key, result_type: UInt64, source_id: 3
|
COLUMN id: 2, column_name: key, result_type: UInt64, source_id: 3
|
||||||
COLUMN id: 4, column_name: a, result_type: UInt8, source_id: 3
|
COLUMN id: 4, column_name: a, result_type: UInt8, source_id: 3
|
||||||
|
SETTINGS allow_experimental_analyzer=1
|
||||||
QUERY id: 0
|
QUERY id: 0
|
||||||
PROJECTION COLUMNS
|
PROJECTION COLUMNS
|
||||||
key UInt64
|
key UInt64
|
||||||
@ -279,6 +285,7 @@ QUERY id: 0
|
|||||||
SORT id: 10, sort_direction: ASCENDING, with_fill: 0
|
SORT id: 10, sort_direction: ASCENDING, with_fill: 0
|
||||||
EXPRESSION
|
EXPRESSION
|
||||||
COLUMN id: 2, column_name: key, result_type: UInt64, source_id: 3
|
COLUMN id: 2, column_name: key, result_type: UInt64, source_id: 3
|
||||||
|
SETTINGS allow_experimental_analyzer=1
|
||||||
QUERY id: 0
|
QUERY id: 0
|
||||||
PROJECTION COLUMNS
|
PROJECTION COLUMNS
|
||||||
t1.id UInt64
|
t1.id UInt64
|
||||||
@ -307,6 +314,7 @@ QUERY id: 0
|
|||||||
SORT id: 14, sort_direction: ASCENDING, with_fill: 0
|
SORT id: 14, sort_direction: ASCENDING, with_fill: 0
|
||||||
EXPRESSION
|
EXPRESSION
|
||||||
COLUMN id: 15, column_name: id, result_type: UInt64, source_id: 5
|
COLUMN id: 15, column_name: id, result_type: UInt64, source_id: 5
|
||||||
|
SETTINGS allow_experimental_analyzer=1
|
||||||
[0,1,2]
|
[0,1,2]
|
||||||
[0,1,2]
|
[0,1,2]
|
||||||
[0,1,2]
|
[0,1,2]
|
||||||
|
@ -20,25 +20,25 @@ SELECT key, a FROM test ORDER BY key, a, exp(key + a) SETTINGS allow_experimenta
|
|||||||
SELECT key, a FROM test ORDER BY key, exp(key + a);
|
SELECT key, a FROM test ORDER BY key, exp(key + a);
|
||||||
SELECT key, a FROM test ORDER BY key, exp(key + a) SETTINGS allow_experimental_analyzer=1;
|
SELECT key, a FROM test ORDER BY key, exp(key + a) SETTINGS allow_experimental_analyzer=1;
|
||||||
EXPLAIN SYNTAX SELECT groupArray(x) from (SELECT number as x FROM numbers(3) ORDER BY x, exp(x));
|
EXPLAIN SYNTAX SELECT groupArray(x) from (SELECT number as x FROM numbers(3) ORDER BY x, exp(x));
|
||||||
EXPLAIN QUERY TREE run_passes=1 SELECT groupArray(x) from (SELECT number as x FROM numbers(3) ORDER BY x, exp(x));
|
EXPLAIN QUERY TREE run_passes=1 SELECT groupArray(x) from (SELECT number as x FROM numbers(3) ORDER BY x, exp(x)) settings allow_experimental_analyzer=1;
|
||||||
EXPLAIN SYNTAX SELECT groupArray(x) from (SELECT number as x FROM numbers(3) ORDER BY x, exp(exp(x)));
|
EXPLAIN SYNTAX SELECT groupArray(x) from (SELECT number as x FROM numbers(3) ORDER BY x, exp(exp(x)));
|
||||||
EXPLAIN QUERY TREE run_passes=1 SELECT groupArray(x) from (SELECT number as x FROM numbers(3) ORDER BY x, exp(exp(x)));
|
EXPLAIN QUERY TREE run_passes=1 SELECT groupArray(x) from (SELECT number as x FROM numbers(3) ORDER BY x, exp(exp(x))) settings allow_experimental_analyzer=1;
|
||||||
EXPLAIN SYNTAX SELECT groupArray(x) from (SELECT number as x FROM numbers(3) ORDER BY exp(x), x);
|
EXPLAIN SYNTAX SELECT groupArray(x) from (SELECT number as x FROM numbers(3) ORDER BY exp(x), x);
|
||||||
EXPLAIN QUERY TREE run_passes=1 SELECT groupArray(x) from (SELECT number as x FROM numbers(3) ORDER BY exp(x), x);
|
EXPLAIN QUERY TREE run_passes=1 SELECT groupArray(x) from (SELECT number as x FROM numbers(3) ORDER BY exp(x), x) settings allow_experimental_analyzer=1;
|
||||||
EXPLAIN SYNTAX SELECT * FROM (SELECT number + 2 AS key FROM numbers(4)) s FULL JOIN test t USING(key) ORDER BY s.key, t.key;
|
EXPLAIN SYNTAX SELECT * FROM (SELECT number + 2 AS key FROM numbers(4)) s FULL JOIN test t USING(key) ORDER BY s.key, t.key;
|
||||||
EXPLAIN QUERY TREE run_passes=1 SELECT * FROM (SELECT number + 2 AS key FROM numbers(4)) s FULL JOIN test t USING(key) ORDER BY s.key, t.key;
|
EXPLAIN QUERY TREE run_passes=1 SELECT * FROM (SELECT number + 2 AS key FROM numbers(4)) s FULL JOIN test t USING(key) ORDER BY s.key, t.key settings allow_experimental_analyzer=1;
|
||||||
EXPLAIN SYNTAX SELECT key, a FROM test ORDER BY key, a, exp(key + a);
|
EXPLAIN SYNTAX SELECT key, a FROM test ORDER BY key, a, exp(key + a);
|
||||||
EXPLAIN QUERY TREE run_passes=1 SELECT key, a FROM test ORDER BY key, a, exp(key + a);
|
EXPLAIN QUERY TREE run_passes=1 SELECT key, a FROM test ORDER BY key, a, exp(key + a) settings allow_experimental_analyzer=1;
|
||||||
EXPLAIN SYNTAX SELECT key, a FROM test ORDER BY key, exp(key + a);
|
EXPLAIN SYNTAX SELECT key, a FROM test ORDER BY key, exp(key + a);
|
||||||
EXPLAIN QUERY TREE run_passes=1 SELECT key, a FROM test ORDER BY key, exp(key + a);
|
EXPLAIN QUERY TREE run_passes=1 SELECT key, a FROM test ORDER BY key, exp(key + a) settings allow_experimental_analyzer=1;
|
||||||
EXPLAIN QUERY TREE run_passes=1 SELECT key FROM test GROUP BY key ORDER BY avg(a), key;
|
EXPLAIN QUERY TREE run_passes=1 SELECT key FROM test GROUP BY key ORDER BY avg(a), key settings allow_experimental_analyzer=1;
|
||||||
|
|
||||||
DROP TABLE IF EXISTS t1;
|
DROP TABLE IF EXISTS t1;
|
||||||
DROP TABLE IF EXISTS t2;
|
DROP TABLE IF EXISTS t2;
|
||||||
CREATE TABLE t1 (id UInt64) ENGINE = MergeTree() ORDER BY id;
|
CREATE TABLE t1 (id UInt64) ENGINE = MergeTree() ORDER BY id;
|
||||||
CREATE TABLE t2 (id UInt64) ENGINE = MergeTree() ORDER BY id;
|
CREATE TABLE t2 (id UInt64) ENGINE = MergeTree() ORDER BY id;
|
||||||
|
|
||||||
EXPLAIN QUERY TREE run_passes=1 SELECT * FROM t1 INNER JOIN t2 ON t1.id = t2.id ORDER BY t1.id, t2.id;
|
EXPLAIN QUERY TREE run_passes=1 SELECT * FROM t1 INNER JOIN t2 ON t1.id = t2.id ORDER BY t1.id, t2.id settings allow_experimental_analyzer=1;
|
||||||
|
|
||||||
set optimize_redundant_functions_in_order_by = 0;
|
set optimize_redundant_functions_in_order_by = 0;
|
||||||
|
|
||||||
|
@ -1,3 +1,5 @@
|
|||||||
|
set allow_experimental_analyzer = 1;
|
||||||
|
|
||||||
EXPLAIN QUERY TREE run_passes=1
|
EXPLAIN QUERY TREE run_passes=1
|
||||||
SELECT avg(log(2) * number) AS k FROM numbers(10000000)
|
SELECT avg(log(2) * number) AS k FROM numbers(10000000)
|
||||||
GROUP BY GROUPING SETS (((number % 2) * (number % 3)), number % 3, number % 2)
|
GROUP BY GROUPING SETS (((number % 2) * (number % 3)), number % 3, number % 2)
|
||||||
|
@ -0,0 +1,2 @@
|
|||||||
|
set allow_experimental_analyzer=0;
|
||||||
|
EXPLAIN QUERY TREE run_passes = true, dump_passes = true SELECT 1; -- { serverError NOT_IMPLEMENTED }
|
Loading…
Reference in New Issue
Block a user