qq_32849217 2016-10-27 06:16 采纳率: 33.3%
浏览 5901
已采纳

mysql查询每天的记录,但是若当天没有记录的话,怎么让其返回0

我要获取每天添加的记录数,

我的sql语句,
select date_format(u.addtime,'%Y-%m-%d') addday,count(1) cnt
from 'user' u
where u.addtime>='2016-9-21 00:00:00' and u.addtime<now() group by addday

现在的结果是这样的:

图片说明
像2016-9-23,因为没有记录,所以就没有显示,我想要这段时间每天的记录数,即使9-23没有记录,count也要为0,这个怎么解决啊?

  • 写回答

3条回答 默认 最新

  • little_how 2016-10-27 06:41
    关注

    我不知道你的场景是什么,但是数据库无中生有特别难;
    1.建议在程序中处理;
    2.实在要用数据库处理则需要一张全日期表;比如2016的一天是一条数据;
    然后用日期表来左连接你的这个结果集,日期限制也要在日期表,然后再用case when;

    希望能帮你找到思路....

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 matlab有关常微分方程的问题求解决
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考