[英]Sql Bigquery - concat two columns into a new column
select if (
a_bill_id = b_bill_id,
a_bill_id,
concat(a_bill_id , ' ', b_bill_id )
) as bill_id
from your_table
... 显示 null 值....
select if (
a_bill_id = b_bill_id or (a_bill_id = b_bill_id) is null,
coalesce(a_bill_id, b_bill_id),
concat(a_bill_id , ' ', b_bill_id )
) as bill_id
from your_table
您可以使用这样的案例陈述 -
SELECT
case when A_Bill_ID = B_BILL_ID then a_bill_Id
else CONCAT(A_Bill_ID , ' ', B_BILL_ID )
end AS BILL_ID
FROM `table.tmp_140222`
如果初始列中有 Null 个值,您可以使用 IFNULL 或 COALEASE 将其替换为空字符串。 但在这种情况下,我建议在没有分隔符的情况下使用它或编写多个“when”语句以避免在最后一列中出现尾部空格 -
SELECT
case when A_Bill_ID = B_BILL_ID then a_bill_Id
else CONCAT(IFNULL(A_Bill_ID), ''), "", IFNULL(B_BILL_ID, ''))
end AS BILL_ID
FROM `table.tmp_140222`
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.