最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
mysql数据库case语句的使用方法
时间:2015-10-20 编辑:简简单单 来源:一聚教程网
表A:如图
数据库case语句的使用方法" size-medium="" src="https://img.111com.net/get_pic/2015/10/20/20151020145224923.png" />
表B:如图
想输出master_id下的status=6的order数量,想要输出的结果如下图:
一开始所采取的语句是:select count(a.order_id) from a left join b on a.order_id=b.order_id where b.status=6 group by a.master_id ,发现,当status=6的这条数据不存在是查询的结果就是空,并不是像想象中返回0。
用case语句就可以很好的解决这个问题:
代码如下 | 复制代码 |
select a.master_id,sum(case when b.status=6 then 1 else 0 end) as total_count from a inner join b on a.order_id=b.id group by a.master_id. |
用case语句执行时,当满足status=6时就返回1否则返回0,用sum计算出符合条件的数量。
好了现在再整理一些简单的例子供各位参考。
代码如下 | 复制代码 |
表的创建
数据插入:
在这里用sql语句进行日期比较的话,需要对年加引号,要不然可能结果和预期的结果不同, ========================================================== insert into penalties values(1,'2008-01-01',3.45); 第一题:对罚款登记分为三类,第一类low,包括大于0小于等于40的罚款,第二类moderate大于40到80之间的罚款,第三类high包含所有大于80的罚款 select payment_date, amount,
|
-
上一个: sql字段多个值查询的例子
相关文章
- 完整的卸载MySQL数据库 05-20
- Laravel操作mysql数据库(增删改查)例子 05-13
- MySQL数据库表分区注意事项总结 05-10
- MYSQL数据库中ORDER BY CASE WHEN使用示例 04-12
- python使用mysql数据库的例子 01-07
- MySQL数据库之锁的详解 10-13