Hive 配置单元允许的列名

Hive 配置单元允许的列名,hive,Hive,我对蜂巢完全陌生。创建配置单元表时,我遇到以下错误: >create table coffee (WINDOW int); Error: Error while compiling statement: FAILED: ParseException line 1:23 cannot recognize input near 'WINDOW' 'int' ')' in column specification (state=42000,code=40000) 当我挖掘更多信息

我对蜂巢完全陌生。创建配置单元表时,我遇到以下错误:

 >create table coffee (WINDOW int);

 Error: Error while compiling statement: FAILED: ParseException line 1:23 
 cannot recognize input near 'WINDOW' 'int' ')' in column specification 
 (state=42000,code=40000)
当我挖掘更多信息时,我意识到这是因为我在配置单元中创建表时使用了保留关键字“Window”。我可以在配置单元中获取一个不能用作列名的所有保留关键字的列表吗。在下面的链接中,我得到了一个保留关键字列表,但在创建表时,我能够使用许多列出的保留关键字作为列名


您不能将保留关键字用作列名。 窗口是一个反向关键字。因此,请为变量使用其他名称

编辑:使用反勾引号(```),如下所示:

create table coffee ( `WINDOW` int);

您可以使用反勾引号创建具有如下关键字名称的表/列

create table coffee (`WINDOW` int);

无论如何,我建议您选择一个不同的名称,如果您想按列名选择数据,您还必须使用反勾引号,正如我在描述中提到的那样。我知道窗口是不能使用的保留关键字。我的问题是,如果有任何保留关键字列表不能用作配置单元列。请在反勾引号(```)中使用保留关键字,它将允许您用作列名。实际上,“保留字”列表取决于配置单元版本,列名的实际保留字列表也取决于配置单元版本。为了安全起见,避免使用每一个“保留字”。