ClickHouse/dbms/include/DB/Parsers/ParserInsertQuery.h

33 lines
1017 B
C
Raw Normal View History

2011-10-30 05:19:41 +00:00
#pragma once
#include <DB/Parsers/IParserBase.h>
namespace DB
{
/** Варианты:
*
* Обычный вариант:
2012-12-11 20:32:08 +00:00
* INSERT INTO [db.]table (c1, c2, c3) VALUES (v11, v12, v13), (v21, v22, v23), ...
* INSERT INTO [db.]table VALUES (v11, v12, v13), (v21, v22, v23), ...
2011-10-30 05:19:41 +00:00
*
2011-10-31 06:37:12 +00:00
* Вставка данных в произвольном формате.
* Сами данные идут после перевода строки, если он есть, или после всех пробельных символов, иначе.
2012-12-11 20:32:08 +00:00
* INSERT INTO [db.]table (c1, c2, c3) FORMAT format \n ...
* INSERT INTO [db.]table FORMAT format \n ...
2011-10-30 05:19:41 +00:00
*
* Вставка результата выполнения SELECT запроса.
2012-12-11 20:32:08 +00:00
* INSERT INTO [db.]table (c1, c2, c3) SELECT ...
* INSERT INTO [db.]table SELECT ...
2011-10-30 05:19:41 +00:00
*/
class ParserInsertQuery : public IParserBase
{
protected:
String getName() { return "INSERT query"; }
bool parseImpl(Pos & pos, Pos end, ASTPtr & node, String & expected);
};
}