如何在 MySQL 中獲取當前日期前兩天的記錄?


要獲取當前日期前幾天的記錄,您需要使用 DATE_SUB() 函式。我們還將使用 NOW() 函式獲取當前日期。語法如下所示

SELECT *FROM yourTableName
WHERE yourDateTimeColumnName BETWEEN DATE_SUB(DATE(NOW()), INTERVAL 2 DAY)
AND DATE_SUB(DATE(NOW()), INTERVAL 1 DAY);

讓我們來看一個例子

mysql> create table get2daysAgoDemo
   - > (
   - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   - > Name varchar(20),
   - > PostDateTime datetime
   - > );
Query OK, 0 rows affected (1.70 sec)

使用 insert 命令在表中插入一些記錄。

查詢如下所示

mysql> insert into get2daysAgoDemo(Name,PostDateTime) values('Larry',now());
Query OK, 1 row affected (0.68 sec)
mysql> insert into get2daysAgoDemo(Name,PostDateTime) values('Mike','2019-02-13');
Query OK, 1 row affected (0.12 sec)
mysql> insert into get2daysAgoDemo(Name,PostDateTime) values('Sam','2019-01-31');
Query OK, 1 row affected (0.15 sec)
mysql> insert into get2daysAgoDemo(Name,PostDateTime) values('Bob','2019-02-14');
Query OK, 1 row affected (0.29 sec)
mysql> insert into get2daysAgoDemo(Name,PostDateTime) values('David','2019-02-12');
Query OK, 1 row affected (0.21 sec)
mysql> insert into get2daysAgoDemo(Name,PostDateTime) values('Carol','2019-02-11');
Query OK, 1 row affected (0.22 sec)

使用 select 語句顯示錶中的所有記錄。

查詢如下所示

mysql> select *from get2daysAgoDemo;

以下是輸出結果

+----+-------+---------------------+
| Id | Name  | PostDateTime        |
+----+-------+---------------------+
|  1 | Larry | 2019-02-15 21:47:10 |
|  2 | Mike  | 2019-02-13 00:00:00 |
|  3 | Sam   | 2019-01-31 00:00:00 |
|  4 | Bob   | 2019-02-14 00:00:00 |
|  5 | David | 2019-02-12 00:00:00 |
|  6 | Carol | 2019-02-11 00:00:00 |
+----+-------+---------------------+
6 rows in set (0.00 sec)

以下是獲取前兩天的記錄的查詢。假設當前日期為 2019-02-15

mysql> select *from get2daysAgoDemo
   - > where PostDateTime between DATE_SUB(DATE(NOW()), INTERVAL 2 DAY)
   - > AND DATE_SUB(DATE(NOW()), INTERVAL 1 DAY);

以下是輸出結果,顯示了過去 2 天(即 13 日和 14 日)的記錄,因為我們的當前日期是 15 日(2 月)。

+----+------+---------------------+
| Id | Name | PostDateTime        |
+----+------+---------------------+
|  2 | Mike | 2019-02-13 00:00:00 |
|  4 | Bob  | 2019-02-14 00:00:00 |
+----+------+---------------------+
2 rows in set (0.01 sec)

更新於: 2019-07-30

2K+ 閱讀量

開啟你的 職業生涯

透過完成課程獲得認證

立即開始
廣告

© . All rights reserved.