【问题标题】:MySQL - Select Month differenceMySQL - 选择月差
【发布时间】:2012-01-11 21:50:26
【问题描述】:

所以我可以得到 SELECT DATEDIFF(CURDATE(),expires) 的日子,但不完全是一个月的输出一 (1)。这难道不能在 MySQL 中将其转换为月份吗?我想检查给定的日期(如 expires)是否 >= 1。

【问题讨论】:

    标签: mysql date select datediff


    【解决方案1】:
    SELECT 
       ...
    FROM
       tablename
    WHERE
       expires<=DATE_SUB(CURDATE(), INTERVAL 1 MONTH);
    

    将为您提供一个月前或更早过期的所有行

    【讨论】:

      【解决方案2】:

      使用以下查询

        Select * from 
        table_name where TIMESTAMPDIFF
        (MONTH, 
        ADDDATE(LAST_DAY(SUBDATE(expires, INTERVAL 1 MONTH)), 1),
        ADDDATE(LAST_DAY(SUBDATE(CURDATE(), INTERVAL 1 MONTH)), 1)
        )>=1
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-01-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-27
        相关资源
        最近更新 更多