区分Cloudera Impala表列中的区分大小写

时间:2017-11-08 16:35:06

标签: cloudera impala

我已经安装了Coludera VM。尝试使用查询编辑器从Impala数据库中获取数据。如果我在查询中给出大写列名,总是以小写字母获取列名。列名是否有任何限制,就像我们应该使用小写的列名一样?

示例查询:
  从default.orders

中选择orderid为 COLUMN1

结果:

列1

10248
10249
10278

2 个答案:

答案 0 :(得分:1)

来自Impala documentation

  

Impala标识符始终不区分大小写。也就是说,表名为   无论引用如何,t1和T1始终引用同一个表   字符。在内部,Impala总是折叠所有指定的表和   列名称为小写。这就是查询中列标题的原因   输出始终以小写显示。

答案 1 :(得分:0)

创建表时尝试这些表属性。确保输入列名称和类型。

tblproperties (
'avro.schema.literal'='
{
    "type":"record",
    "name":"SchemaName",
    "fields":[
        {"name":"COLUMN1","type":["null","long"]},
        {"name":"COLUMN2","type":["null","string"]}
    ]
}'
)

https://cwiki.apache.org/confluence/display/Hive/AvroSerDe#AvroSerDe-Useschema.literalandembedtheschemainthecreatestatement启发

相关问题