Fix TableJoin, upd 01675_join_implicit_cast

This commit is contained in:
vdimir 2021-02-03 14:38:59 +03:00
parent f5b98015a8
commit d15c1a203b
No known key found for this signature in database
GPG Key ID: F57B3E10A21DBB31
5 changed files with 6 additions and 9 deletions

2
contrib/hyperscan vendored

@ -1 +1 @@
Subproject commit 3907fd00ee8b2538739768fa9533f8635a276531
Subproject commit e9f08df0213fc637aac0a5bbde9beeaeba2fe9fa

View File

@ -3,11 +3,10 @@
#include <Columns/FilterDescription.h>
#include <DataStreams/IBlockStream_fwd.h>
#include <Interpreters/AggregateDescription.h>
#include <Interpreters/WindowDescription.h>
#include <Interpreters/TreeRewriter.h>
#include <Interpreters/DatabaseCatalog.h>
#include <Interpreters/SubqueryForSet.h>
#include <Interpreters/TreeRewriter.h>
#include <Interpreters/WindowDescription.h>
#include <Interpreters/join_common.h>
#include <Parsers/IAST_fwd.h>
#include <Storages/IStorage_fwd.h>

View File

@ -68,7 +68,7 @@ class TableJoin
NamesAndTypesList columns_from_joined_table;
/// Columns will be added to block by JOIN. It's a subset of columns_from_joined_table with corrected Nullability
NamesAndTypesList columns_added_by_join;
/// Columns from right table that requres type conversion
/// Columns from right table that requires type conversion
NamesAndTypesList converted_right_types;
/// Name -> original name. Names are the same as in columns_from_joined_table list.

View File

@ -1,6 +1,3 @@
CREATE DATABASE IF NOT EXISTS test_01674;
USE test_01674;
DROP TABLE IF EXISTS t1;
DROP TABLE IF EXISTS t2;
@ -79,6 +76,9 @@ SELECT * FROM t1 INNER JOIN t2 ON (t1.a == t2.a) ORDER BY (a); -- { serverError
DROP TABLE IF EXISTS t1;
DROP TABLE IF EXISTS t2;
DROP TABLE IF EXISTS t_ab1;
DROP TABLE IF EXISTS t_ab2;
CREATE TABLE t_ab1 (id Nullable(Int32), a UInt16, b UInt8) ENGINE = TinyLog;
CREATE TABLE t_ab2 (id Nullable(Int32), a Int16, b Nullable(Int64)) ENGINE = TinyLog;
INSERT INTO t_ab1 VALUES (0, 1, 1), (1, 2, 2);
@ -124,5 +124,3 @@ SELECT any(toTypeName(a)) == 'Int32' AND any(toTypeName(b)) == 'Nullable(Int64)'
DROP TABLE IF EXISTS t_ab1;
DROP TABLE IF EXISTS t_ab2;
DROP DATABASE IF EXISTS test_01674;