想要将hive分区表中的某个分区复制到新的分区中,使用如下sql语句



insert overwrite table zcfw_sda.sda04_core_request_base_ratio_ifrs partition (etl_tx_dt = 20190327)
select * from zcfw_sda.sda04_core_request_base_ratio_ifrs where etl_tx_dt =20190304;


报错了,原因是多出了etl_tx_dt这一列

那么如何查出除了etl_tx_dt这一列剩余的所有列呢



set hive.support.quoted.identifiers=None
insert overwrite table zcfw_sda.sda04_core_request_base_ratio_ifrs partition (etl_tx_dt = 20190327)
select `(etl_tx_dt)?+.+` from zcfw_sda.sda04_core_request_base_ratio_ifrs where etl_tx_dt =20190304;


如果想要查要除个别字段外的剩余所有字段:



select `(col1|col2|col3)?+.+`  from table