相关文章推荐
睿智的甜瓜  ·  pandas ...·  1 周前    · 
慈祥的针织衫  ·  C#/.NET/.NET ...·  1 周前    · 
粗眉毛的伏特加  ·  C# ...·  7 月前    · 
正直的牙膏  ·  windows ...·  1 年前    · 
勤奋的创口贴  ·  LaTeX ...·  1 年前    · 

CASE WHEN表达式用于对数据进行归类。

语法

CASE WHEN condition1 THEN result1
     [WHEN condition2 THEN result2]
     [ELSE result3]
END

参数说明

WHEN http_user_agent like '%Chrome%' then 'Chrome' WHEN http_user_agent like '%Safari%' then 'Safari' ELSE 'unknown' END AS http_user_agent, count(*) AS pv GROUP BY http_user_agent
  • 查询和分析结果 case when
  • 示例2:统计不同请求时间的分布情况。
  • 查询和分析语句
    * |
    SELECT
        WHEN request_time < 10 then 't10'
        WHEN request_time < 100 then 't100'
        WHEN request_time < 1000 then 't1000'
        WHEN request_time < 10000 then 't10000'
        ELSE 'large'
      END AS request_time,
      count(*) AS pv
    GROUP BY
      request_time
  • 查询和分析结果 case when
  • 如果 condition 为true,则返回 result1 ,否则返回null。
    IF(condition, result1)
  • 如果 condition 为true,则返回 result1 ,否则返回 result2
    IF(condition, result1, result2)
  •