我正在尝试基于现有表创建一个新的配置单元表。我需要一个if语句的帮助,该语句允许我从原始表中的两个独立列创建一个合并列。列new\u name&old\u item和uh\u new\u name和uh\u old\u item具有相同的数据,我希望只有一列。我不能改变这张table,因为它有Hive。最后,我需要id,open\u time,然后是列的组合。
下面是创建表的代码:
CREATE TABLE CIs
AS SELECT id, open_time, new_name, uh_new_name, old_item, uh_old_item from sm
where open_time like '2016%' or open_time like '2017%'
order by open_time desc;
以下是我需要的合并列背后的一般逻辑:
If id like 'AB%' then old_item else new_item as combo_code
IF id like 'AB%' then uh_old_item else uh_new_item as combo_name
1条答案
按热度按时间hfyxw5xn1#
这只需要一个简单的case语句作为select的一部分: