mysql 如何按月分组查询出当前年度每个月的短信数量(数据库中这个月要是为空的话就用0条怎么显示出来)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 如何按月分组查询出当前年度每个月的短信数量(数据库中这个月要是为空的话就用0条怎么显示出来)相关的知识,希望对你有一定的参考价值。
以下是我的sql:(我写的这条不能显示没有数据的这个月的数量 0)
SELECT
DATE_FORMAT(createTime, '%Y-%m') AS date,
count(*) AS count
FROM
data_shortmessage
WHERE
createTime > (
CONCAT(
DATE_FORMAT(now(), '%Y'),
'-01-01'
)
)
AND createTime <= (
CONCAT(
DATE_FORMAT(now(), '%Y'),
'-12-31'
)
)
GROUP BY
YEAR (createTime),
MONTH (createTime);
select a.rq,
b.xssr
from date_table a left jion table1 b
on a.id=b.id 参考技术A 可以考虑用NVL函数或者case语句实现追问
我自己就在尝试用case语句写的,在数据库执行,就是不出来为0数量的这个月,所以才来求教高手帮忙搞定一下
追答我理解了,标准根本就不存在这个数据对吧,这样你想显示是这个意思吧
追问对的,比如查询2015年的,我数据库有1月 2月 5月数据 我需求是,同时也要统计出3 ,4 月的数量,只不过是用0显示出来
追答这个就没办法了,除非数据库存在这个数据,否则那就得用存储过程实现或者SQL取到值后外部程序进行处理
追问哦,那我就去找找存储的吧,谢谢你指导啊
以上是关于mysql 如何按月分组查询出当前年度每个月的短信数量(数据库中这个月要是为空的话就用0条怎么显示出来)的主要内容,如果未能解决你的问题,请参考以下文章