mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-09-23 18:20:50 +00:00
Rewrite right distributed table in local join.
This commit is contained in:
parent
2a617e6a5a
commit
2e52277cd7
@ -191,13 +191,25 @@ private:
|
||||
ASTTableJoin * table_join = node.table_join->as<ASTTableJoin>();
|
||||
if (table_join->locality != ASTTableJoin::Locality::Global)
|
||||
{
|
||||
if (auto & subquery = node.table_expression->as<ASTTableExpression>()->subquery)
|
||||
if (auto table = node.table_expression->as<ASTTableExpression>())
|
||||
{
|
||||
std::vector<ASTPtr> renamed;
|
||||
NonGlobalTableVisitor::Data table_data(data.getContext(), data.checker, renamed, nullptr, table_join);
|
||||
NonGlobalTableVisitor(table_data).visit(subquery);
|
||||
if (!renamed.empty()) //-V547
|
||||
data.renamed_tables.emplace_back(subquery, std::move(renamed));
|
||||
if (auto & subquery = table->subquery)
|
||||
{
|
||||
std::vector<ASTPtr> renamed;
|
||||
NonGlobalTableVisitor::Data table_data(data.getContext(), data.checker, renamed, nullptr, table_join);
|
||||
NonGlobalTableVisitor(table_data).visit(subquery);
|
||||
if (!renamed.empty()) //-V547
|
||||
data.renamed_tables.emplace_back(subquery, std::move(renamed));
|
||||
}
|
||||
else if (table->database_and_table_name)
|
||||
{
|
||||
auto tb = node.table_expression;
|
||||
std::vector<ASTPtr> renamed;
|
||||
NonGlobalTableVisitor::Data table_data{data.getContext(), data.checker, renamed, nullptr, table_join};
|
||||
NonGlobalTableVisitor(table_data).visit(tb);
|
||||
if (!renamed.empty())
|
||||
data.renamed_tables.emplace_back(tb, std::move(renamed));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user