2012-06-18 07:49:19 +00:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <DB/Parsers/IAST.h>
|
2013-02-20 13:14:12 +00:00
|
|
|
#include <DB/Parsers/ASTQueryWithOutput.h>
|
2012-06-18 07:49:19 +00:00
|
|
|
|
|
|
|
|
|
|
|
namespace DB
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
/** Запрос SHOW TABLES или SHOW DATABASES
|
|
|
|
*/
|
2013-02-20 13:14:12 +00:00
|
|
|
class ASTShowTablesQuery : public ASTQueryWithOutput
|
2012-06-18 07:49:19 +00:00
|
|
|
{
|
|
|
|
public:
|
2014-12-17 15:26:24 +00:00
|
|
|
bool databases{false};
|
2012-06-18 07:49:19 +00:00
|
|
|
String from;
|
|
|
|
String like;
|
2014-12-17 15:26:24 +00:00
|
|
|
bool not_like{false};
|
2012-06-18 07:49:19 +00:00
|
|
|
|
2014-12-17 15:26:24 +00:00
|
|
|
ASTShowTablesQuery() = default;
|
|
|
|
ASTShowTablesQuery(const StringRange range_) : ASTQueryWithOutput(range_) {}
|
2012-06-18 07:49:19 +00:00
|
|
|
|
|
|
|
/** Получить текст, который идентифицирует этот элемент. */
|
2014-12-17 15:26:24 +00:00
|
|
|
String getID() const override { return "ShowTables"; };
|
2012-06-18 07:49:19 +00:00
|
|
|
|
2014-12-17 15:26:24 +00:00
|
|
|
ASTPtr clone() const override
|
2013-02-20 13:14:12 +00:00
|
|
|
{
|
|
|
|
ASTShowTablesQuery * res = new ASTShowTablesQuery(*this);
|
2014-12-17 15:26:24 +00:00
|
|
|
ASTPtr ptr{res};
|
|
|
|
|
2013-02-20 13:14:12 +00:00
|
|
|
res->children.clear();
|
|
|
|
|
|
|
|
if (format)
|
|
|
|
{
|
|
|
|
res->format = format->clone();
|
|
|
|
res->children.push_back(res->format);
|
|
|
|
}
|
|
|
|
|
2014-12-17 15:26:24 +00:00
|
|
|
return ptr;
|
2013-02-20 13:14:12 +00:00
|
|
|
}
|
2012-06-18 07:49:19 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
}
|