mysql统计数据,如何把空的也显示出来,我用group by,但是空的数据并不能显示出来,求解答............
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql统计数据,如何把空的也显示出来,我用group by,但是空的数据并不能显示出来,求解答............相关的知识,希望对你有一定的参考价值。
如何一次性把所有的都显示出来,包括空的数据.....
假如2月有两条数据,6,7,8月没数据的
比如我要统计一年中每个月的会员注册量,12个月都要统计,再按月份排序,每个月都要显示出来,没有的
就显示0条,我的语句是这样的 怎么把它都查出来, 能帮我解答一下吗? 我很急! select month,count(*) as num
from total where type='member_reg' group by month order by month asc
SELECT month,(case when type="member_reg" then count(*) when type="Null" then 0 end) as tal FROM `total` group by month order by month ;本回答被提问者采纳 参考技术B 用自连接啊!追问
请问怎么用自连接呀?
id month(月份) time(时间) type(统计的类型)
1 2 1393558495 member_reg (会员注册量)
表名total
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统计数据,如何把空的也显示出来,我用group by,但是空的数据并不能显示出来,求解答............的主要内容,如果未能解决你的问题,请参考以下文章
mysql 如何按月分组查询出当前年度每个月的短信数量(数据库中这个月要是为空的话就用0条怎么显示出来)
我将boolean插入mysql中bit类型,读出来是false和true,但是用false查询用,是空的