【问题标题】:CASE Multiple values on Athena PrestoCASE Athena Presto 上的多个值
【发布时间】:2021-11-27 09:20:24
【问题描述】:

我正在寻求一些建议。

我希望将多个值编码到同一个输出,但 Athena 似乎无法识别 SQL。

CASE customer_name
WHEN 'Aa' or 'Ar' or 'Aar' or 'Aaro' THEN 'Aaron' END as customer_name

我想避免做以下事情:

CASE customer_name
WHEN 'Aa' THEN 'Aaron'
WHEN 'Ar' THEN 'Aaron'
WHEN 'Ar' THEN 'Aaron'
WHEN 'Ar' THEN 'Aaron'
END as customer_name

【问题讨论】:

    标签: sql presto


    【解决方案1】:

    您可以将字段移到“WHEN”子句中:

    WITH dataset ( customer_name) AS
    (
      VALUES
          ('Aa'),
      ('Ar'),
      ('Ar'),
      ('Ar'),
      ('B')
    )
    
     SELECT
        CASE
            WHEN customer_name IN ('Aa', 'Ar', 'Aar', 'Aaro') THEN 'Aaron'
        END AS customer_name
    FROM dataset
    

    输出:

    customer_name
    Aaron
    Aaron
    Aaron
    Aaron
     

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-19
      • 2018-10-11
      • 2020-11-18
      • 2022-10-04
      • 2021-06-21
      • 2021-02-01
      • 2021-12-17
      • 2020-11-02
      相关资源
      最近更新 更多