怎么得到mysql系统日期年月与表格日期字段年月一致的数据总数?

功能需求:本月到期保管箱数量。
疑 问:我想要获取userbox表格中endDate的年月与当前系统时间年月相同的数据个数。用的如下语句,但是找出来不对。(endDate是datetime类型。)
select count(*) as count from UserBox where endDate="yyyy-MM";

2个回答

那你就是要按照一个固定时间统计数据喽。
那就把endDate转换成固定时间,再嵌套一层查询,先将endDate转换成月份格式,然后再去统计次数和时间。
像这样

select count(t.id),t.datetime
from (select id,to_char(endDate,'yyyy-mm') as datetime
from UserBox) t
group by t.datetime

比如想找和2016年4月相同的数据,就把时间转换成char
where to_char(endDate,'yyyy-mm')='2016-04'

不知道有没有理解错……

liuyuan19931217
晚灯下的烟火 但是本月第一天貌似不好取值。。
接近 4 年之前 回复
liuyuan19931217
晚灯下的烟火 本月第一天,最后一天估计可行
接近 4 年之前 回复
liuyuan19931217
晚灯下的烟火 我不是只要这个月,我是要自动计算每个月的数据总数
接近 4 年之前 回复
z342401436
光明下的影子 回复liuyuan19931217: 其实有个更简单的方法,where endDate >= '2016-04-01 00:00:00' and endDate <= '2016-04-30 23:59:59'
接近 4 年之前 回复
liuyuan19931217
晚灯下的烟火 理解完全正确,赞
接近 4 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问