Update 01049_join_low_card_bug.sql

This commit is contained in:
vdimir 2021-06-16 13:39:42 +03:00
parent 7032998108
commit b319c70e8e
No known key found for this signature in database
GPG Key ID: F57B3E10A21DBB31
2 changed files with 187 additions and 57 deletions

View File

@ -1,80 +1,202 @@
LowCardinality(String)
str LowCardinality(String)
LowCardinality(String)
str LowCardinality(String)
str LowCardinality(String) LowCardinality(String)
str LowCardinality(String) LowCardinality(String)
str LowCardinality(String) LowCardinality(String)
str LowCardinality(String) LowCardinality(String)
str_r LowCardinality(String)
str LowCardinality(String)
str_l LowCardinality(String)
LowCardinality(String)
str LowCardinality(String)
str_l LowCardinality(String)
str_r LowCardinality(String)
str str LowCardinality(String) LowCardinality(String)
str_r LowCardinality(String) LowCardinality(String)
str str LowCardinality(String) LowCardinality(String)
str_r LowCardinality(String) LowCardinality(String)
str str LowCardinality(String) LowCardinality(String)
str_l LowCardinality(String) LowCardinality(String)
str_r LowCardinality(String) LowCardinality(String)
str str LowCardinality(String) LowCardinality(String)
str_l LowCardinality(String) LowCardinality(String)
str_r LowCardinality(String) LowCardinality(String)
str LowCardinality(String)
LowCardinality(String)
str LowCardinality(String)
str LowCardinality(String) String
str LowCardinality(String) String
str LowCardinality(String) String
str LowCardinality(String) String
String
str_r LowCardinality(String)
str LowCardinality(String)
str_l LowCardinality(String)
LowCardinality(String)
str LowCardinality(String)
str_l LowCardinality(String)
str_r LowCardinality(String)
str str LowCardinality(String) String
str_r LowCardinality(String) String
str str LowCardinality(String) String
str_r LowCardinality(String) String
str str LowCardinality(String) String
str_l LowCardinality(String) String
str_r LowCardinality(String) String
str str LowCardinality(String) String
str_l LowCardinality(String) String
str_r LowCardinality(String) String
str String
String
str String
str String LowCardinality(String)
str String LowCardinality(String)
str String LowCardinality(String)
str String LowCardinality(String)
LowCardinality(String)
str_r String
str String
str_l String
String
str String
str_l String
str_r String
str str String LowCardinality(String)
str_r String LowCardinality(String)
str str String LowCardinality(String)
str_r String LowCardinality(String)
str str String LowCardinality(String)
str_l String LowCardinality(String)
str_r String LowCardinality(String)
str str String LowCardinality(String)
str_l String LowCardinality(String)
str_r String LowCardinality(String)
str LowCardinality(String)
LowCardinality(String)
str LowCardinality(String)
str LowCardinality(String) Nullable(String)
str LowCardinality(String) Nullable(String)
str LowCardinality(String) Nullable(String)
str LowCardinality(String) Nullable(String)
\N Nullable(String)
str_r LowCardinality(String)
str LowCardinality(String)
str_l LowCardinality(String)
LowCardinality(String)
str LowCardinality(String)
str_l LowCardinality(String)
str_r LowCardinality(String)
str str LowCardinality(String) Nullable(String)
str_r LowCardinality(String) Nullable(String)
str str LowCardinality(String) Nullable(String)
str_r LowCardinality(String) Nullable(String)
str str LowCardinality(String) Nullable(String)
str_l \N LowCardinality(String) Nullable(String)
str_r LowCardinality(String) Nullable(String)
str str LowCardinality(String) Nullable(String)
str_l \N LowCardinality(String) Nullable(String)
str_r LowCardinality(String) Nullable(String)
str Nullable(String)
\N Nullable(String)
str Nullable(String)
\N str Nullable(String) LowCardinality(String)
\N str Nullable(String) LowCardinality(String)
\N str Nullable(String) LowCardinality(String)
\N str Nullable(String) LowCardinality(String)
\N LowCardinality(Nullable(String))
str LowCardinality(Nullable(String))
\N LowCardinality(Nullable(String))
str LowCardinality(Nullable(String))
\N str LowCardinality(Nullable(String))
\N str LowCardinality(Nullable(String))
\N str LowCardinality(Nullable(String))
\N str LowCardinality(Nullable(String))
\N LowCardinality(Nullable(String))
str LowCardinality(Nullable(String))
\N LowCardinality(Nullable(String))
str LowCardinality(Nullable(String))
\N str LowCardinality(Nullable(String))
\N str LowCardinality(Nullable(String))
\N str LowCardinality(Nullable(String))
\N str LowCardinality(Nullable(String))
str_r Nullable(String)
str Nullable(String)
str_l Nullable(String)
\N Nullable(String)
str Nullable(String)
str_l Nullable(String)
str_r Nullable(String)
str str Nullable(String) LowCardinality(String)
\N str_r Nullable(String) LowCardinality(String)
str str Nullable(String) LowCardinality(String)
\N str_r Nullable(String) LowCardinality(String)
str str Nullable(String) LowCardinality(String)
str_l Nullable(String) LowCardinality(String)
\N str_r Nullable(String) LowCardinality(String)
str str Nullable(String) LowCardinality(String)
str_l Nullable(String) LowCardinality(String)
\N str_r Nullable(String) LowCardinality(String)
str LowCardinality(Nullable(String))
\N LowCardinality(Nullable(String))
str LowCardinality(Nullable(String))
str_r LowCardinality(Nullable(String))
str LowCardinality(Nullable(String))
str_l LowCardinality(Nullable(String))
\N LowCardinality(Nullable(String))
str LowCardinality(Nullable(String))
str_l LowCardinality(Nullable(String))
str_r LowCardinality(Nullable(String))
str str LowCardinality(Nullable(String))
\N str_r LowCardinality(Nullable(String))
str str LowCardinality(Nullable(String))
\N str_r LowCardinality(Nullable(String))
str str LowCardinality(Nullable(String))
str_l \N LowCardinality(Nullable(String))
\N str_r LowCardinality(Nullable(String))
str str LowCardinality(Nullable(String))
str_l \N LowCardinality(Nullable(String))
\N str_r LowCardinality(Nullable(String))
str LowCardinality(Nullable(String))
\N LowCardinality(Nullable(String))
str LowCardinality(Nullable(String))
str_r LowCardinality(Nullable(String))
str LowCardinality(Nullable(String))
str_l LowCardinality(Nullable(String))
\N LowCardinality(Nullable(String))
str LowCardinality(Nullable(String))
str_l LowCardinality(Nullable(String))
str_r LowCardinality(Nullable(String))
str str LowCardinality(Nullable(String))
\N str_r LowCardinality(Nullable(String))
str str LowCardinality(Nullable(String))
\N str_r LowCardinality(Nullable(String))
str str LowCardinality(Nullable(String))
str_l \N LowCardinality(Nullable(String))
\N str_r LowCardinality(Nullable(String))
str str LowCardinality(Nullable(String))
str_l \N LowCardinality(Nullable(String))
\N str_r LowCardinality(Nullable(String))
str Nullable(String)
\N Nullable(String)
str Nullable(String)
\N str Nullable(String)
\N str Nullable(String)
\N str Nullable(String)
\N str Nullable(String)
\N LowCardinality(Nullable(String))
str_r Nullable(String)
str Nullable(String)
str_l Nullable(String)
\N Nullable(String)
str Nullable(String)
str_l Nullable(String)
str_r Nullable(String)
str str Nullable(String)
\N str_r Nullable(String)
str str Nullable(String)
\N str_r Nullable(String)
str str Nullable(String)
str_l \N Nullable(String)
\N str_r Nullable(String)
str str Nullable(String)
str_l \N Nullable(String)
\N str_r Nullable(String)
str LowCardinality(Nullable(String))
\N LowCardinality(Nullable(String))
str LowCardinality(Nullable(String))
\N str LowCardinality(Nullable(String))
\N str LowCardinality(Nullable(String))
\N str LowCardinality(Nullable(String))
\N str LowCardinality(Nullable(String))
\N Nullable(String)
str_r LowCardinality(Nullable(String))
str LowCardinality(Nullable(String))
str_l LowCardinality(Nullable(String))
\N LowCardinality(Nullable(String))
str LowCardinality(Nullable(String))
str_l LowCardinality(Nullable(String))
str_r LowCardinality(Nullable(String))
str str LowCardinality(Nullable(String))
\N str_r LowCardinality(Nullable(String))
str str LowCardinality(Nullable(String))
\N str_r LowCardinality(Nullable(String))
str str LowCardinality(Nullable(String))
str_l \N LowCardinality(Nullable(String))
\N str_r LowCardinality(Nullable(String))
str str LowCardinality(Nullable(String))
str_l \N LowCardinality(Nullable(String))
\N str_r LowCardinality(Nullable(String))
str Nullable(String)
\N Nullable(String)
str Nullable(String)
\N str Nullable(String)
\N str Nullable(String)
\N str Nullable(String)
\N str Nullable(String)
str_r Nullable(String)
str Nullable(String)
str_l Nullable(String)
\N Nullable(String)
str Nullable(String)
str_l Nullable(String)
str_r Nullable(String)
str str Nullable(String)
\N str_r Nullable(String)
str str Nullable(String)
\N str_r Nullable(String)
str str Nullable(String)
str_l \N Nullable(String)
\N str_r Nullable(String)
str str Nullable(String)
str_l \N Nullable(String)
\N str_r Nullable(String)
LowCardinality(String)
str LowCardinality(String)

View File

@ -12,9 +12,13 @@ CREATE TABLE nr (x Nullable(UInt32), lc Nullable(String)) ENGINE = Memory;
CREATE TABLE l_lc (x UInt32, lc LowCardinality(String)) ENGINE = Memory;
CREATE TABLE r_lc (x UInt32, lc LowCardinality(String)) ENGINE = Memory;
INSERT INTO r VALUES (0, 'str');
INSERT INTO nr VALUES (0, 'str');
INSERT INTO r_lc VALUES (0, 'str');
INSERT INTO r VALUES (0, 'str'), (1, 'str_r');
INSERT INTO nr VALUES (0, 'str'), (1, 'str_r');
INSERT INTO r_lc VALUES (0, 'str'), (1, 'str_r');
INSERT INTO l VALUES (0, 'str'), (2, 'str_l');
INSERT INTO nl VALUES (0, 'str'), (2, 'str_l');
INSERT INTO l_lc VALUES (0, 'str'), (2, 'str_l');
--
@ -136,6 +140,10 @@ SELECT l.lc, r.lc, toTypeName(l.lc) FROM nl AS l RIGHT JOIN r_lc AS r USING (lc)
SELECT l.lc, r.lc, toTypeName(l.lc) FROM nl AS l FULL JOIN r_lc AS r USING (x);
SELECT l.lc, r.lc, toTypeName(l.lc) FROM nl AS l FULL JOIN r_lc AS r USING (lc);
SET join_use_nulls = 0;
SELECT lc, toTypeName(lc) FROM l_lc AS l RIGHT JOIN r_lc AS r USING (x) ORDER BY l.lc;
DROP TABLE l;
DROP TABLE r;
DROP TABLE nl;