mysql 使用 DATE_FORMAT(date,'%Y-%m') 取月份 获取到的数据全部是null
但是我使用(date,'%Y-%m-%d') 去获取数据的时候就,就可以获取到数据
猜测:
是时间格式化的问题,但是没有找到方法去解决,因为我获取的数据就是 ’2022-07‘,也是根据这个条件去查询的,所有请教一下各位,如何解决这个问题。
解决:
我是在service层重新做的处理 因为获取到数据是null,我加了一个判断,重新进行分割之后再进行赋值,但是比较想再mysql中做处理,而且这个问题出现的原因不清楚,所以请教一下各位。
'2021-07'这样的不被识别为日期格式,'2021-07-22'这种的才能被识别
可以使用substr(a.date,6,2)进行处理
Month(a.date)不好用吗?
这个是一个解决方法,通过截取的方式来进行操作,但是还是不明白是什么原因造成的,
难道是DATE_FORMAT 返回的是字符串,有再次的使用DATE_FORMAT 造成的问题吗?
非常期待大神的回复。