从 Hive 中的 select 查询中排除分区字段
Excluding the partition field from select queries in Hive
假设我在 Hive 中有一个如下的 table 定义(实际的 table 有大约 65 列):
CREATE EXTERNAL TABLE S.TEST (
COL1 STRING,
COL2 STRING
)
PARTITIONED BY (extract_date STRING)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '[=11=]7'
LOCATION 'xxx';
创建 table 后,当我 运行 hive -e "describe s.test"
时,我看到 extract_date
是 table 上的列之一。做一个 select * from s.test
也 returns extract_date
列值。在 Hive 中 运行ning select 查询时是否可以排除此 virtual(?) 列。
更改此 属性
set hive.support.quoted.identifiers=none;
和运行查询为
SELECT `(extract_date)?+.+` FROM <table_name>;
我测试它工作正常。
假设我在 Hive 中有一个如下的 table 定义(实际的 table 有大约 65 列):
CREATE EXTERNAL TABLE S.TEST (
COL1 STRING,
COL2 STRING
)
PARTITIONED BY (extract_date STRING)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '[=11=]7'
LOCATION 'xxx';
创建 table 后,当我 运行 hive -e "describe s.test"
时,我看到 extract_date
是 table 上的列之一。做一个 select * from s.test
也 returns extract_date
列值。在 Hive 中 运行ning select 查询时是否可以排除此 virtual(?) 列。
更改此 属性
set hive.support.quoted.identifiers=none;
和运行查询为
SELECT `(extract_date)?+.+` FROM <table_name>;
我测试它工作正常。