mysql两个年月格式怎么相减

2023-01 2023-12 想求这俩的月份差值

2023-01-01 00:00:00 和2023-12的差值

这俩个的在mysql下面应该怎么写

SQL lincoder 发布于 2023-12-29 15:18
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
用户k6280494Lv6资深互助
发布于2023-12-29 15:19(编辑于 2023-12-29 15:26)

SELECT MONTH(STR_TO_DATE('2023-12', '%Y-%m')) - MONTH(STR_TO_DATE('2023-01', '%Y-%m')) AS months_diff;

//试下这个

SELECT      (YEAR(STR_TO_DATE('2023-12', '%Y-%m')) - YEAR(STR_TO_DATE('2023-01', '%Y-%m'))) * 12 +      (MONTH(STR_TO_DATE('2023-12', '%Y-%m')) - MONTH(STR_TO_DATE('2023-01', '%Y-%m'))) AS months_diff;

最佳回答
0
大林3143511Lv5中级互助
发布于2023-12-29 16:33

1)先利用dateformat()函数,统一格式

2)在利用TIMESTAMPDIFF(unit,datetime_expr1,datetime_expr2)返回指定类型的值

1703838763848.png

我没有环境,没法测,你参考下:

https://baijiahao.baidu.com/s?id=1761802177531750172&wfr=spider&for=pc

  • 3关注人数
  • 142浏览人数
  • 最后回答于:2023-12-29 16:33
    请选择关闭问题的原因
    确定 取消
    返回顶部