2 liuyuan19931217 liuyuan19931217 于 2016.04.25 13:54 提问

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

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

2个回答

z342401436
z342401436   2016.04.25 14:31
已采纳

那你就是要按照一个固定时间统计数据喽。
那就把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

z342401436
z342401436   2016.04.25 14:01

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

不知道有没有理解错……

liuyuan19931217
liuyuan19931217 但是本月第一天貌似不好取值。。
一年多之前 回复
liuyuan19931217
liuyuan19931217 本月第一天,最后一天估计可行
一年多之前 回复
liuyuan19931217
liuyuan19931217 我不是只要这个月,我是要自动计算每个月的数据总数
一年多之前 回复
z342401436
z342401436 回复liuyuan19931217: 其实有个更简单的方法,where endDate >= '2016-04-01 00:00:00' and endDate <= '2016-04-30 23:59:59'
一年多之前 回复
liuyuan19931217
liuyuan19931217 理解完全正确,赞
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!