【问题标题】:PHP count mysql row with changed date formatPHP计算更改日期格式的mysql行
【发布时间】:2017-01-08 18:40:54
【问题描述】:

我有下一个问题: 我的表格日期格式是:LIKE 2017-01-08 18:50:25(有时间)。

当我使用像

这样的 sql 查询时
'SELECT date FROM table WHERE date = "2017-01-08"'

我的行是空的,我需要在没有时间的情况下计算所有具有相同(今天)日期的行。

注意,我不会更改 INSERT 日期时间!

【问题讨论】:

    标签: php mysql sql date


    【解决方案1】:

    使用DATE() 获取日期时间字段的日期部分并将其与今天进行比较。使用COUNT() 获取与您的查询匹配的记录数。

    SELECT count(*) FROM table WHERE DATE(date) = CURDATE()
    

    您还可以将CURDATE() 替换为NOW()、CURRENT_DATE() 和CURRENT_DATE

    【讨论】:

      【解决方案2】:

      你也可以通过以下方式使用

      'SELECT date FROM table WHERE date_format(date,'%Y-%m-%d') = "2017-01-08"'
      

      date_format 是 mysql 函数,它根据您的模式返回日期上述模式仅从日期时间返回 Y-m-d 希望对你有帮助

      【讨论】:

        【解决方案3】:

        请将您的语句等于运算符更改为大于

        'SELECT date FROM table WHERE date > "2017-01-08"'

        默认情况下,如果时间部分不存在,那么它会将 00:00...

        【讨论】:

          猜你喜欢
          • 2014-02-23
          • 1970-01-01
          • 1970-01-01
          • 2012-08-07
          • 1970-01-01
          • 2021-04-27
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多