【问题标题】:How to create new column which is choice from other 3 values by priority如何创建新列,该列是按优先级从其他 3 个值中选择的
【发布时间】:2019-05-12 08:45:51
【问题描述】:

我有一个表,它有 3 列,如 id1、id2、id3。现在我想要另一个有一个 id 列的表,它是 (id1, id2, id3) 的值之一。

像这样

if id1 is not null:
    id = id1
elif id2 is not null:
    id  = id2
else:
    id = id3

如何实现这样的 SQL 查询?

【问题讨论】:

    标签: sql google-bigquery


    【解决方案1】:

    根据文档 COALESCE 是支持的,所以你可以这样做

    SELECT COALESCE(id1, id2, id3)
    

    因为 COALESCE 返回第一个非空值

    【讨论】:

    • SELECT COALESCE(id1, id2, id3) as id from table where id IS NOT NULL,得到错误“无法识别的名称:id”?我该如何调节这个
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-07
    • 2022-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多