Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hive 如何在配置单元中转义用作列名的保留字?_Hive_Escaping_Reserved Words - Fatal编程技术网

Hive 如何在配置单元中转义用作列名的保留字?

Hive 如何在配置单元中转义用作列名的保留字?,hive,escaping,reserved-words,Hive,Escaping,Reserved Words,当我在配置单元中执行以下查询时,它给我的是当前日期,而不是用户信息表中的列值 SELECT CURRENT_DATE FROM USER_INFO LIMIT 1; 如何在配置单元中转义用作列名的保留字 谢谢和问候, 卡姆莱什明白了 有两种方法 1您可以在关键字前后使用撇号,如下所示 SELECT CURRENT_DATE FROM `USER_INFO` LIMIT 1; 2下面显示了一个设置,如果您使用unix shell(即使用sh命令)执行该设置,则可以执行该设置 希望

当我在配置单元中执行以下查询时,它给我的是当前日期,而不是用户信息表中的列值

SELECT CURRENT_DATE 
FROM   USER_INFO
LIMIT 1; 
如何在配置单元中转义用作列名的保留字

谢谢和问候, 卡姆莱什明白了

有两种方法

1您可以在关键字前后使用撇号,如下所示

SELECT CURRENT_DATE 
FROM   `USER_INFO`
LIMIT 1;
2下面显示了一个设置,如果您使用unix shell(即使用sh命令)执行该设置,则可以执行该设置

希望这有帮助

谢谢和问候,
Kamleshkumar Gujarati

以查询列中的保留字(例如“用户”或“当前日期”)

请注意撇号类型`(正如Wheezil指出的,这个字符是'backtick',但我想指出的是,在国际键盘上,这个字符相对难以键入)


自我回答是可以的,但由于错误的查询,会产生误导,请在此处添加答案以供将来参考。

在修复之前先投反对票。(1) 引用了错误的元素(2.1),这与shell无关。(2.2)这仅适用于某些关键字,而不是所有关键字。此处显示的转义字符是“backtick”或“accent grave”(代码点0060)而不是“撇号”。此处显示的转义字符是“backtick”或“accent grave”(代码点0060)而不是“撇号”
hive.support.sql11.reserved.keywords=false
SELECT `CURRENT_DATE` 
FROM   USER_INFO
LIMIT 1;