**Use case**

```
CREATE TABLE t
(
    x UInt8,
    y UInt8,
)
```
if (!table_overrides_p.parse(pos, table_overrides, expected))
        return false;
    auto query = std::make_shared<ASTCreateQuery>();
    node = query;
    query->attach = attach;
    query->if_not_exists = if_not_exists;
    query->uuid = uuid;
    query->cluster = cluster_str;
    query->database = database;
    if (database)
        query->children.push_back(database);
    query->set(query->storage, storage);
    if (comment)
        query->set(query->comment, comment);
    if (table_overrides && !table_overrides->children.empty())
        query->set(query->table_overrides, table_overrides);
    return true;
}
bool ParserCreateViewQuery::parseImpl(Pos & pos, ASTPtr & node, Expected & expected)
{
    ParserKeyword s_create("CREATE");
    ParserKeyword s_attach("ATTACH");
    ParserKeyword s_if_not_exists("IF NOT EXISTS");
    ParserCompoundIdentifier table_name_p(true, true);
    ParserKeyword s_as("AS");
    ParserKeyword s_view("VIEW");
    ParserKeyword s_materialized("MATERIALIZED");
    ParserKeyword s_populate("POPULATE");
    ParserKeyword s_or_replace("OR REPLACE");
    ParserToken s_dot(TokenType::Dot);