当前位置: 首页 > news >正文

郑州市经开区建设局网站企业建站模板

郑州市经开区建设局网站,企业建站模板,如何注册一家网站建设公司,哈尔滨建设网站成本MySQL CASE表达式 一、CASE表达式的语法二、 常用场景1,按属性分组统计2,多条件统计3,按条件UPDATE4, 在CASE表达式中使用聚合函数 三、CASE表达式出现的位置 一、CASE表达式的语法 -- 简单CASE表达式 CASE sexWHEN 1 THEN 男WHEN 2 THEN 女…

MySQL CASE表达式

  • 一、CASE表达式的语法
  • 二、 常用场景
    • 1,按属性分组统计
    • 2,多条件统计
    • 3,按条件UPDATE
    • 4, 在CASE表达式中使用聚合函数
  • 三、CASE表达式出现的位置

一、CASE表达式的语法

-- 简单CASE表达式
CASE sexWHEN 1 THEN '男'WHEN 2 THEN '女'ELSE '保密'
END-- 搜索CASE表达式
CASEWHEN sex=1 THEN '男'WHEN sex=2 THEN '女'ELSE '保密'
END 

注意事项:

  1. 各分支返回的数据类型必须一致;
  2. 结尾一定要写 END;
  3. 养成写 ELSE 子句的习惯(否则返回 NULL);

二、 常用场景

1,按属性分组统计

如:已有全国各市区人口数,统计各省总人口数

idcitypopulation
1南昌市656
2九江市454
3宜春市495
4合肥市800
5芜湖市373
6蚌埠市330
7长沙市1005
8株洲市390
9北京市2185
province总人口
江西省1605
安徽省1503
湖南1395
其它2185
SELECTCASE WHEN city IN('南昌市','九江市','宜春市') THEN '江西省'WHEN city IN('合肥市','芜湖市','蚌埠市') THEN '安徽省'WHEN city IN('长沙市','株洲市') THEN '湖南'ELSE '其它'END AS province, SUM(population) AS '总人口'
FROM `city_pop`
GROUP BY province 

2,多条件统计

如:按姓名和学科汇总成绩

idnameclassscore
1张三chinese98
2张三math87
3张三english91
4李四chinese100
5李四math98
6李四english79
name语文数学英语
张三988791
李四1009879
SELECT name,SUM(CASE WHEN class='chinese' THEN score ELSE 0 END) AS '语文',SUM(CASE WHEN class='math' THEN score ELSE 0 END) AS '数学',SUM(CASE WHEN class='english' THEN score ELSE 0 END) AS '英语'
FROM `class`
GROUP BY name

3,按条件UPDATE

如:工资20000以上员工降薪10%;工资10000以下员工加薪20%

idnamesalary
1张三25000
2李四9000
3王五12000
idnamesalary
1张三22500
2李四10800
3王五12000
UPDATE salary 
SET salary =CASE WHEN salary >= 20000 THEN  salary - salary*0.1 WHEN salary <= 10000 THEN  salary + salary*0.2 ELSE salary END

4, 在CASE表达式中使用聚合函数

如:每个人可以参加一个或多个俱乐部,当某人参加多个俱乐部时,需要用flag=1设置主俱乐部,默认flag=0

idnameclubflag
1张三篮球0
2张三羽毛球1
3李四足球0
4李四篮球1
5王五足球0
6刘六羽毛球0
namemain_club
张三羽毛球
李四篮球
王五足球
刘六羽毛球
// group by 为严格模式(sql_mod=ONLY_FULL_GROUP_BY)时,
// select查询的列,要么在group by中声明,要么通过聚合函数包装(此处用了max)
SELECT name, CASE WHEN COUNT(*) > 1 THEN  MAX(CASE WHEN flag = 1 THEN club ELSE NULL END)ELSE MAX(club) END AS main_club
FROM club
GROUP BY name

三、CASE表达式出现的位置

作为表达式,在执行时会被判断为一个固定值,因此不仅可以在SELECT子句中使用,还可以在WHERE子句、GROUP BY 子句、ORDER BY 子句中使用,它甚至可以写在聚合函数内部。
简单点来说,在能写列名和常量的地方,通常都可以写CASE表达式

http://www.yayakq.cn/news/210025/

相关文章:

  • 益阳网站建设公司电话云购网站开发
  • 网站建设开发公司地址企业网站建设文档
  • 优斗网站建设邢台做移动网站公司电话号码
  • 简述网站建设及维护的全过程wordpress 主页链接
  • 有关建筑网站建设方案案例室内装饰设计平面图
  • 网站建设及优化的策划书与狗做网站
  • 婚庆企业网站建设网页制作学习教程
  • 苏州网站建设设计网站制作需要什么人员
  • 百度调整导致网站排名下降江西网站制作
  • 企业网站建设方案效果贸易网站建设公司
  • 做机械产品用什么网站网站 备案 异地
  • 徐州网站建设技术外包中企动力销售岗位怎么样
  • 做网站优化用什么软件做一个小程序的步骤
  • 北京高端网站建设公司哪家好营销型网站的建设流程
  • 想做棋牌网站怎么做如何优化网站内部链接
  • 广州网站建设服务电话建设美食网站
  • 做网站怎么买服务器吗私人网站建设成本
  • 网站视频是什么软件做的网站制作网站建站
  • 做公司的网站大概多少钱网站制作费用大概多少
  • 中国做网站最好的企业一般网站的后台怎么做的
  • 怎样编辑网站网站发布与推广方案
  • 做网站是什么免费商城源码下载
  • python3 网站开发实例计算机学校全国排名
  • 北京市住房和城乡建设部网站官网seo怎么做?
  • 网站标题采集柒零叁网站建设
  • 您身边的网站建设顾问百度站长资源
  • 网站建设gzzctyi网站开发技术教材
  • 做网站的目标是什么门户网站代码
  • windous 系统 做网站wordpress顶部空白
  • 公司网站购物平台建设合适的网站制作需要多少钱