【问题标题】:Get today and yesterday data from mysql从mysql获取今天和昨天的数据
【发布时间】:2019-06-12 07:52:53
【问题描述】:
SELECT  * FROM att_record2 WHERE  DATE(row_datentime)=DATE_SUB(CURDATE(), INTERVAL 1 DAY)  
AND out_datentime="0000-00-00 00:00:00" AND in_datentime!="0000-00-00 00:00:00"

我想获取今天和昨天的数据 我的方法只显示昨天的记录,但我今天和昨天都想要,请帮助我

【问题讨论】:

标签: mysql sql database


【解决方案1】:

好的,你可以得到昨天和今天的如下函数:

mysql> select curdate() as today;
+------------+
| today      |
+------------+
| 2019-06-12 |
+------------+
1 row in set (0.00 sec)

mysql> select curdate() - interval 1 day as yesterday;
+------------+
| yesterday  |
+------------+
| 2019-06-11 |
+------------+
1 row in set (0.00 sec)

mysql> select curdate() + interval 1 day as tomorrow;
+------------+
| tomorrow   |
+------------+
| 2019-06-13 |
+------------+
1 row in set (0.00 sec)

那么完整的SQL:

select  
    * 
from 
    att_record2 
where  
    date(row_datentime) >= curdate() - interval 1 day
    and date(row_datentime) <= curdate()
    and out_datentime='0000-00-00 00:00:00'
    and in_datentime!='0000-00-00 00:00:00'

【讨论】:

    【解决方案2】:

    使用 >= 和

     SELECT  * FROM att_record2 WHERE row_datentime >= NOW() - INTERVAL 1 DAY  AND row_datentime  <= NOW() AND out_datentime="0000-00-00 00:00:00" AND in_datentime!="0000-00-00 00:00:00"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-28
      • 1970-01-01
      • 2022-11-15
      • 1970-01-01
      • 2011-06-14
      • 1970-01-01
      相关资源
      最近更新 更多