Computer >> Máy Tính >  >> Lập trình >> MySQL

Làm cách nào để chọn ngày gần đây nhất trong số một số dấu thời gian có thể có trong MySQL?

Bạn có thể chọn ngày gần đây nhất trong số một số dấu thời gian có thể có với sự trợ giúp của mệnh đề ORDER BY.

Cú pháp như sau

SELECT yourColumnName1,yourColumnName2,...N FROM yourTableName ORDER BY yourTimestampColumnName DESC LIMIT 1;

Để hiểu cú pháp trên, chúng ta hãy tạo một bảng. Truy vấn để tạo bảng như sau

mysql> create table MostRecentDateDemo
   - > (
   - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   - > Name varchar(10),
   - > ShippingDate timestamp
   - > );
Query OK, 0 rows affected (0.65 sec)

Chèn một số bản ghi trong bảng bằng lệnh chèn. Truy vấn như sau

mysql> insert into MostRecentDateDemo(Name,ShippingDate) values('Larry',date_add(now(),interval -1 month));
Query OK, 1 row affected (0.19 sec)
mysql> insert into MostRecentDateDemo(Name,ShippingDate) values('Mike','2018-09-12 19:34:45');
Query OK, 1 row affected (0.43 sec)
mysql> insert into MostRecentDateDemo(Name,ShippingDate) values('Sam','2017-11-24 14:30:40');
Query OK, 1 row affected (0.19 sec)
mysql> insert into MostRecentDateDemo(Name,ShippingDate) values('Carol','2019-02-12 11:30:41');
Query OK, 1 row affected (0.56 sec)
mysql> insert into MostRecentDateDemo(Name,ShippingDate) values('David',now());
Query OK, 1 row affected (0.22 sec)
mysql> insert into MostRecentDateDemo(Name,ShippingDate) values('John','2018-12-31 12:59:58');
Query OK, 1 row affected (0.15 sec)

Hiển thị tất cả các bản ghi từ bảng bằng cách sử dụng câu lệnh select.

Truy vấn như sau

mysql> select *from MostRecentDateDemo;

Sau đây là kết quả

+----+-------+---------------------+
| Id | Name  | ShippingDate        |
+----+-------+---------------------+
|  1 | Larry | 2019-01-14 17:17:08 |
|  2 | Mike  | 2018-09-12 19:34:45 |
|  3 | Sam   | 2017-11-24 14:30:40 |
|  4 | Carol | 2019-02-12 11:30:41 |
|  5 | David | 2019-02-14 17:19:34 |
|  6 | John  | 2018-12-31 12:59:58 |
+----+-------+---------------------+
6 rows in set (0.00 sec)

Đây là truy vấn để chọn ngày gần đây nhất

mysql> select Id,Name,ShippingDate from MostRecentDateDemo order by ShippingDate desc limit 1;

Sau đây là kết quả

+----+-------+---------------------+
| Id | Name  | ShippingDate        |
+----+-------+---------------------+
|  5 | David | 2019-02-14 17:19:34 |
+----+-------+---------------------+
1 row in set (0.00 sec)