将两列映射到 Athena 中的一列

Mapping two columns into one column in Athena

我在 Athena 中有这样的数据:

| shop_id  | date        | provider | provider_new |  sales
| 123      | 2020-06-01  |     X    |              |   100
| 124      | 2020-07-01  |     Y    |              |   200
| 125      | 2020-08-01  |          |      Z       |   300
| 126      | 2020-09-01  |          |      T       |   400

但是,table 所有者将 provider 更改为 provider_new。因此,在 2020-08-01 之后,提供者 returns 为 NULL。这是我的查询:

SELECT date,
         shop_id,
             
    CASE
    WHEN provider = 'X' THEN
    'X'
    WHEN provider = 'Y' THEN
    'Y'
    WHEN provider LIKE 'Z%' THEN
    'Z'
    WHEN provider LIKE 'T%' THEN
    'T'
    ELSE 'M'
    END AS provider_group,
         SUM(sales) AS sales
FROM X
GROUP BY  1, 2

如何将这两列映射到一列?

提前致谢。

你要coalesce()吗?

coalesce(provider, provider_new)

coalesce() returns 给定参数的第一个非 null 值。