需要一些建议。在HIVE DB中,可以创建具有列空间的表,如下所示
CREATE TABLE TEST2("Kod ASS" String)
得到如下错误
错误:编译语句时出错:FAILED:ParseException行1:19无法识别'"" Kod ASS"' '字符串' ')'在列规范中 SQLState:42000 ErrorCode:40000
答案 0 :(得分:5)
显示有关列名的手册:
https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL
在Hive 0.12及更早版本中,表名和列名中只允许使用字母数字和下划线字符。
在Hive 0.13及更高版本中,列名可以包含任何Unicode字符(请参阅HIVE-6013)。在其中指定的任何列名称 反叛(`)按字面意思对待。在反引号字符串中,使用 双重反引号(``)表示反引号字符。反引号 报价还允许使用表和保留关键字 列标识符。
要恢复到0.13.0之前的行为并将列名限制为字母数字和下划线字符,请设置配置属性 hive.support.quoted.identifiers为none。在这种配置中, 反引号名称被解释为正则表达式。有关细节, 请参阅支持列名称中的带引号的标识符。
答案 1 :(得分:0)
创建表 DB_Name.Table_name (
First name
VARCHAR(64), Last name
VARCHAR(64), Location id
VARCHAR(64) , age INT, gpa DECIMAL(3,2)) 按(年龄)聚集成 2 个存储桶作为兽人;
或
创建表 TEST2(Kod ASS
String) 存储为文本文件;
您可以使用
并将列名放入其中。
我希望两者都对你有用。