ClickHouse/src/Storages/SelectQueryDescription.h

31 lines
1.0 KiB
C++
Raw Normal View History

2020-06-05 17:29:40 +00:00
#pragma once
#include <Interpreters/Context_fwd.h>
2020-06-05 17:29:40 +00:00
#include <Interpreters/StorageID.h>
namespace DB
{
/// Select query for different view in storages
struct SelectQueryDescription
{
2023-11-29 02:32:41 +00:00
/// Table id for select query. Only for non-refreshable materialized views.
2020-06-05 17:29:40 +00:00
StorageID select_table_id = StorageID::createEmpty();
/// Select query itself (ASTSelectWithUnionQuery)
ASTPtr select_query;
/// First query from select_query list
ASTPtr inner_query;
/// Parse description from select query for materialized view. Also
/// validates query.
2023-11-29 02:32:41 +00:00
static SelectQueryDescription getSelectQueryFromASTForMatView(const ASTPtr & select, bool refreshable, ContextPtr context);
2020-06-05 17:29:40 +00:00
SelectQueryDescription() = default;
SelectQueryDescription(const SelectQueryDescription & other);
SelectQueryDescription & operator=(const SelectQueryDescription & other);
2023-02-02 18:25:32 +00:00
SelectQueryDescription(SelectQueryDescription && other) noexcept = default;
SelectQueryDescription & operator=(SelectQueryDescription && other) noexcept = default;
2020-06-05 17:29:40 +00:00
};
}