配置单元允许的列名

vohkndzv  于 2021-06-26  发布在  Hive
关注(0)|答案(2)|浏览(421)

我对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)

当我进一步挖掘时,我意识到这是由于在配置单元中创建表时使用了保留关键字“window”造成的。我可以得到配置单元中不能用作列名的所有保留关键字的列表吗。我在下面的链接中得到了一个保留关键字的列表,但在创建表时,我可以从中使用许多列出的保留关键字作为列名。
https://cwiki.apache.org/confluence/display/hive/languagemanual+ddl

l2osamch

l2osamch1#

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

create table coffee (`WINDOW` int);

无论如何,我建议您选择一个不同的名称,如果您想按列名选择数据,您还必须使用反引号

lzfw57am

lzfw57am2#

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

相关问题