Google bigquery 在bigquery中对同一列应用不同的条件
我有一个输入表。我需要根据几个条件得到输出Google bigquery 在bigquery中对同一列应用不同的条件,google-bigquery,Google Bigquery,我有一个输入表。我需要根据几个条件得到输出 如果Type=“存款”,则输出=值 如果Type=“Card”和条件为(“已批准”,“已批准:有条件”),则输出=值, 如果Type=“Card”和Condition=“referenced”,则输出=0.4*值 您可以使用大小写表达式: CASE WHEN type = 'Deposit' THEN value WHEN type = 'Card' AND condition IN ('approved', 'approved:conditiona
您可以使用
大小写
表达式:
CASE
WHEN type = 'Deposit' THEN value
WHEN type = 'Card' AND condition IN ('approved', 'approved:conditionally') THEN value
WHEN type = 'Card' AND condition IN ('referred') THEN value * 0.4
END
下面是BigQuery标准SQL 根据您的示例数据,唯一改变输出值的情况是
如果Type=“Card”和Condition=“referenced”
,那么您可以将逻辑简化为如下所示
CASE
WHEN (type, condition) = ('Card', 'referred') THEN value * 0.4
ELSE value
END output