case when then else_每天一个常用MySQL函数-[case_when_then_end]
场景
我们在实现一些类似的统计功能的时候一般会根据场景去分别统计,比如订单存在多种状态我们需要分别统计各种状态的订单,如已支付,待支付,已退款等等,实现方式有多种,这里我们使用sql直接去统计。
语法
CASE expr WHEN condition1 THEN result1 EN WHEN condition2 THEN result2 EN ELSE result3END 如果condition1成立则返回result1 ,否则往下执行,最后到ELse可以比对下{switch...case...default}
使用
先来看一下订单统计,我们假设3代表已支付、4已退款、0待支付、2已过期select order_status, count(*) from tp_order group by order_status;+--------------+----------+| order_status | count(*) |+--------------+----------+| 0 | 876 || 1 | 1 || 2 | 27 || 3 | 467 || 4 | 22 |+--------------+----------+5 rows in set (0.01 sec) --这里也可以用if实现select order_id as '订单ID', case order_status when 3 then '已支付' when 0 then '待支付' when 4 then '已退款' end as '订单状态' from tp_order limit 5;+----------+--------------+| 订单ID | 订单状态 |+----------+--------------+| 80 | 已支付 || 81 | 已支付 || 82 | 已支付 || 83 | 已支付 || 84 | 已支付 |+----------+--------------+5 rows in set (0.00 sec)select sum(case `order_status` when 3 then `order_amount` else 0 end ) as '已支付总金额', sum(case `order_status` when 4 then `order_amount` else 0 end ) as '已退款总金 额', sum(case `order_status` when 0 then `order_amount` else 0 end ) as '待支付总金额' from tp_order;+--------------------+--------------------+--------------------+| 已支付总金额 | 已退款总金额 | 待支付总金额 |+--------------------+--------------------+--------------------+| 32766777.01 | 29890.41 | 1349925.62 |+--------------------+--------------------+--------------------+1 row in set (0.00 sec)
case when then else_每天一个常用MySQL函数-[case_when_then_end]相关推荐
- mysql 格式化时间_每天一个常用MySQL函数-from_unixtime等
场景 我们在MySQL中存储数据的时候,表中通常有代表时间属性的字段,更新时间.创建时间.支付成功时间等,通常为时间戳或者标准时间格式,可能会遇到需要格式化展示的需求,可以通过程序去控制或者通过MyS ...
- 常用MySQL函数存储过程_解析MySQL存储过程、常用函数代码
mysql存储过程的概念: 存储在数据库当中可以执行特定工作(查询和更新)的一组SQL代码的程序段. mysql函数的概念: 函数是完成特定功能的SQL语句,函数分为内置函数和自定义函数(user-d ...
- c fun函数求n个整数的平均值_常用正则表达式和常用MySQL函数整理
非负整数:^d+$正整数:^[0-9]*[1-9][0-9]*$非正整数:^((-d+)|(0+))$负整数:^-[0-9]*[1-9][0-9]*$整数:^-?d+$非负浮点数:^d+(.d+)?$ ...
- php show函数,PHP中的常用MYSQL函数 - msnshow的个人空间 - 51Testing软件测试网 51Testing软件测试网-软件测试人的精神家园...
1.mysql_connect()-建立数据库连接51Testing软件测试网6\p A4B4F$f 格式:M-k0u-u4t+J K0 resource mysql_connect([string ...
- 数据库mysql中贴换函数_关于一个自定义MYSQL函数,实现点击链接后,在数据库里改变数据的问题。...
展开全部 嗯... 回答你这个问题比较纠62616964757a686964616fe4b893e5b19e31333332626161结, 因为看情况你已经完全把前端代码和后台代码混为一谈了. 那么 ...
- mondrian mysql 实例_MONDRIAN支持的常用mysql函数
数值函数 MAX Caclulatedmember实现 MIN Caclulatedmember实现 AVG Caclulatedmember实现 SUM ...
- 添加mysql 函数库_mysql函数创建
如何使用MySQL提升权限 前不久网上公开了一个MySQL Func的漏洞,讲的是使用MySQL创建一个自定义的函数,然后通过这个函数来攻击服务器.最早看到相关的报道是在o-otik上,但是公布的是针 ...
- mysql添加函数库_创建mysql函数
如何使用MySQL提升权限 前不久网上公开了一个MySQL Func的漏洞,讲的是使用MySQL创建一个自定义的函数,然后通过这个函数来攻击服务器.最早看到相关的报道是在o-otik上,但是公布的是针 ...
- C语言常用功能函数集合
C语言常用功能函数集合 说明:作者将个人接触到的C语言功能函数记录下来,组成一个集合,便于查阅和加深印象. 1. 内存相关 malloc()函数 :申请一片连续的堆内存,字节为单位.分配所需的内存空间 ...
最新文章
- python大神-Python 大神 kennethreitz 又搞事了
- NumberUtils用法
- 高效使用Google
- echarts formatter_vue使用echarts的方法
- Hadoop生态系统的详细介绍
- cad服务器手动改自动,几百块就能手动改自动? 怎样省钱换来方便
- LeetCode 720. 词典中最长的单词(Trie树)
- 客户端用mstsc不能用一台设备连接终端服务器的解决办法
- 这种事情干不得!微信已动手处理4.5万个公众号
- 走进markdown
- python运用maya_Mayapythonapi场景选择操作
- ai python 面试_面试分享系列 | 17道Python面试题,让你在求职中无往不利
- Eplan 各版本 软件 百度网盘 永久链接
- 微信小程序自定义icon
- 定理在数学中的简写形式_初中数学常用的定理大全
- 老九学堂 学习 C++ 第四天
- c#窗体应用程序链接本地html网页,使用C# Winform应用程序获取网页源文件的解决方法...
- 2.1 随从图标的创建———自制卡牌游戏之旅
- 运维自动化工具Cobbler之——安装实践
- 贴图知识汇总: 漫反射贴图、凹凸贴图、高光贴图、 AO贴图、环境贴图、 光照纹理及细节贴图
热门文章
- 蔚来正式登陆港交所 首日开盘报160港元
- 苹果“噩梦”来袭!iPhone 13、iPad竟遭遇停产 十多年来首次
- 3800元!爆料大神怒赞谷歌Pixel 6:这是今年最好看手机!
- 自行更换iPhone 13屏幕会导致Face ID失效?苹果将发布软件更新解除限制
- 腾讯接入华为鸿蒙!QQ音乐与Harmony OS达成合作 推出听歌识曲万能卡片
- 马云终于露面了!发表千字演讲
- 李想:欣赏特斯拉 但更喜欢苹果、乔布斯
- iOS 13.2“杀后台”严重 被用户狂喷:专业“杀微信”
- 老用户们,苹果没有忘了你们!
- 荣耀20s真机谍照曝光:开孔全面屏+后置竖排三摄