【问题标题】:MySQL query value where current dateMySQL 查询值 where 当前日期
【发布时间】:2014-01-19 12:39:25
【问题描述】:

查询当前日期所有数据的正确方法是什么? mysql 中的一个函数,它将获取当前日期为上午 12:01 和当前日期为晚上 11:59

select * from tb_data where date between currentdate_starts and currentdate_ends

【问题讨论】:

  • ` DATE(column) = CURDATE()` 是性能杀手

标签: mysql sql date datetime select


【解决方案1】:

不使用DATE(column) = CURDATE()

   SELECT * FROM tb_data WHERE date between concat(curdate(),' ','00:00:00') AND concat(curdate(),' ','23:59:59')

more info

【讨论】:

    【解决方案2】:

    尝试使用 CURDATE()

    SELECT field FROM table WHERE DATE(column) = CURDATE()
    
    
    select * from tb_data where DATE(date) = CURDATE()
    

    文档:CURDATE

    【讨论】:

      【解决方案3】:

      好吧,因为有这么多的答案。也试试这个,看看是否更快

      SELECT * FROM tb_data WHERE date BETWEEN CURDATE() AND (CURDATE()+INTERVAL 1 DAY-INTERVAL 1 SECOND)
      

      【讨论】:

        【解决方案4】:

        使用CURRENT_DATE()CURDATE() 函数。

        试试这个:

        SELECT * FROM tb_data WHERE DATE(dateCol) = CURRENT_DATE();
        

        SELECT * FROM tb_data WHERE DATE(dateCol) = CURDATE() 
        

        【讨论】:

          【解决方案5】:

          CURDATE() 返回当前日期。

          SELECT * from FROM tb_data WHERE DATE(column) = CURDATE()
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-03-05
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-11-13
            相关资源
            最近更新 更多