mysql case 语句的使用
项目中常常需要用到 case 对字段进行转换或者处理计算字段的除零 异常这个时候就需要用到 case 语句
select KQI_TYPE,
case network when 1 then '3G' when 4 then '4G' else '其他' end nettype,
case DomainName when '163.com' then '网易'
when 'apple.com' then 'Apple'
when 'baidu.com' then '百度'
when 'ifeng.com' then '凤凰'
when 'people.cn' then '人民'
when 'qq.com' then '腾讯'
when 'sina.cn' then '新浪'
when 'sohu.com' then '搜狐'
when 'weibo.cn' then '微博'
when 'taobao.com' then '淘宝'
else '其他' end 'websitename',
case when SUM(TEST_NUM_ALL)=0 then 0 else SUM(TEST_NUM_BAD)/ SUM(TEST_NUM_ALL) end 'DPI质差率',
SUM(TEST_NUM_ALL) 'DPI总测试次数',
最常用就是用来处理除零的情况:
case when SUM(TEST_NUM_ALL)=0
then 0
else SUM(TEST_NUM_BAD)/ SUM(TEST_NUM_ALL)
end 'DPI质差率',