2023-01-11 11:54:28 +00:00
|
|
|
-- { echoOn }
|
|
|
|
|
|
|
|
EXPLAIN PLAN header = 1
|
|
|
|
SELECT count() FROM a JOIN b ON b.b1 = a.a1 JOIN c ON c.c1 = b.b1 JOIN d ON d.d1 = c.c1 GROUP BY a.a2
|
|
|
|
;
|
2022-12-27 11:08:56 +00:00
|
|
|
Expression ((Project names + Projection))
|
|
|
|
Header: count() UInt64
|
|
|
|
Aggregating
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_4 String
|
2022-12-27 11:08:56 +00:00
|
|
|
count() UInt64
|
|
|
|
Expression ((Before GROUP BY + DROP unused columns after JOIN))
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_4 String
|
2022-12-27 11:08:56 +00:00
|
|
|
Join (JOIN FillRightFirst)
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_4 String
|
|
|
|
c1_2 UInt64
|
2022-12-27 11:08:56 +00:00
|
|
|
Expression ((JOIN actions + DROP unused columns after JOIN))
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_4 String
|
|
|
|
c1_2 UInt64
|
2022-12-27 11:08:56 +00:00
|
|
|
Join (JOIN FillRightFirst)
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_4 String
|
|
|
|
b1_0 UInt64
|
|
|
|
c1_2 UInt64
|
2022-12-27 11:08:56 +00:00
|
|
|
Expression ((JOIN actions + DROP unused columns after JOIN))
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_4 String
|
|
|
|
b1_0 UInt64
|
2022-12-27 11:08:56 +00:00
|
|
|
Join (JOIN FillRightFirst)
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a1_1 UInt64
|
|
|
|
a2_4 String
|
|
|
|
b1_0 UInt64
|
2022-12-27 11:08:56 +00:00
|
|
|
Expression ((JOIN actions + Change column names to column identifiers))
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a1_1 UInt64
|
|
|
|
a2_4 String
|
2023-03-10 21:40:14 +00:00
|
|
|
ReadFromMemoryStorage
|
|
|
|
Header: a1 UInt64
|
|
|
|
a2 String
|
2022-12-27 11:08:56 +00:00
|
|
|
Expression ((JOIN actions + Change column names to column identifiers))
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: b1_0 UInt64
|
2023-03-10 21:40:14 +00:00
|
|
|
ReadFromMemoryStorage
|
2022-12-27 11:08:56 +00:00
|
|
|
Header: b1 UInt64
|
|
|
|
Expression ((JOIN actions + Change column names to column identifiers))
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: c1_2 UInt64
|
2023-03-10 21:40:14 +00:00
|
|
|
ReadFromMemoryStorage
|
2022-12-27 11:08:56 +00:00
|
|
|
Header: c1 UInt64
|
|
|
|
Expression ((JOIN actions + Change column names to column identifiers))
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: d1_3 UInt64
|
2023-03-10 21:40:14 +00:00
|
|
|
ReadFromMemoryStorage
|
2022-12-27 11:08:56 +00:00
|
|
|
Header: d1 UInt64
|
2023-01-11 11:54:28 +00:00
|
|
|
EXPLAIN PLAN header = 1
|
|
|
|
SELECT a.a2, d.d2 FROM a JOIN b USING (k) JOIN c USING (k) JOIN d USING (k)
|
|
|
|
;
|
2022-12-27 11:08:56 +00:00
|
|
|
Expression ((Project names + (Projection + DROP unused columns after JOIN)))
|
|
|
|
Header: a2 String
|
|
|
|
d2 String
|
|
|
|
Join (JOIN FillRightFirst)
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_0 String
|
|
|
|
k_2 UInt64
|
|
|
|
d2_1 String
|
2022-12-27 11:08:56 +00:00
|
|
|
Expression (DROP unused columns after JOIN)
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_0 String
|
|
|
|
k_2 UInt64
|
2022-12-27 11:08:56 +00:00
|
|
|
Join (JOIN FillRightFirst)
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_0 String
|
|
|
|
k_2 UInt64
|
2022-12-27 11:08:56 +00:00
|
|
|
Expression (DROP unused columns after JOIN)
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_0 String
|
|
|
|
k_2 UInt64
|
2022-12-27 11:08:56 +00:00
|
|
|
Join (JOIN FillRightFirst)
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_0 String
|
|
|
|
k_2 UInt64
|
2022-12-27 11:08:56 +00:00
|
|
|
Expression (Change column names to column identifiers)
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_0 String
|
|
|
|
k_2 UInt64
|
2023-03-10 21:40:14 +00:00
|
|
|
ReadFromMemoryStorage
|
|
|
|
Header: a2 String
|
|
|
|
k UInt64
|
2022-12-27 11:08:56 +00:00
|
|
|
Expression (Change column names to column identifiers)
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: k_3 UInt64
|
2023-03-10 21:40:14 +00:00
|
|
|
ReadFromMemoryStorage
|
2022-12-27 11:08:56 +00:00
|
|
|
Header: k UInt64
|
|
|
|
Expression (Change column names to column identifiers)
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: k_4 UInt64
|
2023-03-10 21:40:14 +00:00
|
|
|
ReadFromMemoryStorage
|
2022-12-27 11:08:56 +00:00
|
|
|
Header: k UInt64
|
|
|
|
Expression (Change column names to column identifiers)
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: d2_1 String
|
|
|
|
k_5 UInt64
|
2023-03-10 21:40:14 +00:00
|
|
|
ReadFromMemoryStorage
|
|
|
|
Header: d2 String
|
|
|
|
k UInt64
|
2023-01-11 11:54:28 +00:00
|
|
|
EXPLAIN PLAN header = 1
|
|
|
|
SELECT b.bx FROM a
|
|
|
|
JOIN (SELECT b1, b2 || 'x' AS bx FROM b ) AS b ON b.b1 = a.a1
|
|
|
|
JOIN c ON c.c1 = b.b1
|
|
|
|
JOIN (SELECT number AS d1 from numbers(10)) AS d ON d.d1 = c.c1
|
|
|
|
WHERE c.c2 != '' ORDER BY a.a2
|
|
|
|
;
|
2022-12-27 11:08:56 +00:00
|
|
|
Expression (Project names)
|
|
|
|
Header: bx String
|
|
|
|
Sorting (Sorting for ORDER BY)
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_6 String
|
|
|
|
bx_0 String
|
2022-12-27 11:08:56 +00:00
|
|
|
Expression ((Before ORDER BY + (Projection + )))
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_6 String
|
|
|
|
bx_0 String
|
2022-12-27 11:08:56 +00:00
|
|
|
Join (JOIN FillRightFirst)
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_6 String
|
|
|
|
bx_0 String
|
|
|
|
c2_5 String
|
|
|
|
c1_3 UInt64
|
2023-06-26 19:17:34 +00:00
|
|
|
Expression
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_6 String
|
|
|
|
bx_0 String
|
|
|
|
c2_5 String
|
|
|
|
c1_3 UInt64
|
2022-12-27 11:08:56 +00:00
|
|
|
Join (JOIN FillRightFirst)
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_6 String
|
|
|
|
bx_0 String
|
|
|
|
b1_1 UInt64
|
|
|
|
c2_5 String
|
|
|
|
c1_3 UInt64
|
2022-12-27 11:08:56 +00:00
|
|
|
Expression ((JOIN actions + DROP unused columns after JOIN))
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a2_6 String
|
|
|
|
bx_0 String
|
|
|
|
b1_1 UInt64
|
2022-12-27 11:08:56 +00:00
|
|
|
Join (JOIN FillRightFirst)
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a1_2 UInt64
|
|
|
|
a2_6 String
|
|
|
|
bx_0 String
|
|
|
|
b1_1 UInt64
|
2022-12-27 11:08:56 +00:00
|
|
|
Expression ((JOIN actions + Change column names to column identifiers))
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: a1_2 UInt64
|
|
|
|
a2_6 String
|
2023-03-10 21:40:14 +00:00
|
|
|
ReadFromMemoryStorage
|
|
|
|
Header: a1 UInt64
|
|
|
|
a2 String
|
2022-12-27 11:08:56 +00:00
|
|
|
Expression ((JOIN actions + (Change column names to column identifiers + (Project names + (Projection + Change column names to column identifiers)))))
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: b1_1 UInt64
|
|
|
|
bx_0 String
|
2023-03-10 21:40:14 +00:00
|
|
|
ReadFromMemoryStorage
|
|
|
|
Header: b1 UInt64
|
|
|
|
b2 String
|
2023-06-26 19:17:34 +00:00
|
|
|
Filter (( + (JOIN actions + Change column names to column identifiers)))
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: c1_3 UInt64
|
|
|
|
c2_5 String
|
2023-03-10 21:40:14 +00:00
|
|
|
ReadFromMemoryStorage
|
|
|
|
Header: c1 UInt64
|
|
|
|
c2 String
|
2022-12-27 11:08:56 +00:00
|
|
|
Expression ((JOIN actions + (Change column names to column identifiers + (Project names + (Projection + Change column names to column identifiers)))))
|
2023-05-22 15:43:30 +00:00
|
|
|
Header: d1_4 UInt64
|
2022-12-27 11:08:56 +00:00
|
|
|
ReadFromStorage (SystemNumbers)
|
|
|
|
Header: number UInt64
|