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

Tìm sự khác biệt giữa hai dấu thời gian trong ngày với MySQL

Sử dụng hàm DATEDIFF () từ MySQL để nhận được sự khác biệt giữa hai dấu thời gian trong ngày.

Cú pháp như sau -

select datediff(yourColumnName1,yourColumnName2) as anyVariableName from yourTableName;

Để hiểu cú pháp trên, chúng ta hãy tạo một bảng. Sau đây là truy vấn để tạo bảng -

mysql> create table DifferenceTimestamp
   −> (
   −> IssueTime timestamp,
   −> DueTime timestamp
   −> );
Query OK, 0 rows affected (0.66 sec)

Chèn một số bản ghi trong bảng với sự trợ giúp của lệnh insert. Chúng tôi đang thiết lập ngày ở đây. Truy vấn như sau -

mysql> insert into DifferenceTimestamp values(now(),date_add(now(),interval -30 Day));
Query OK, 1 row affected (0.12 sec)

mysql> insert into DifferenceTimestamp values(now(),date_add(now(),interval -24 Day));
Query OK, 1 row affected (0.16 sec)

mysql> insert into DifferenceTimestamp values(now(),date_add(now(),interval -5 Day));
Query OK, 1 row affected (0.14 sec)

Hiển thị tất cả các bản ghi từ bảng với sự trợ giúp của câu lệnh select. Truy vấn như sau -

mysql> select *from DifferenceTimestamp;

Sau đây là kết quả -

+---------------------+---------------------+
| IssueTime           | DueTime             |
+---------------------+---------------------+
| 2018-12-07 17:48:28 | 2018-11-07 17:48:28 |
| 2018-12-07 17:48:40 | 2018-11-13 17:48:40 |
| 2018-12-07 17:48:46 | 2018-12-02 17:48:46 |
+---------------------+---------------------+
3 rows in set (0.00 sec)

Đây là truy vấn để có được sự khác biệt giữa hai dấu thời gian trong ngày. Truy vấn như sau -

mysql> SELECT DATEDIFF(IssueTime, DueTime) AS DifferenceInTimestampDays from DifferenceTimestamp;

Sau đây là kết quả -

+---------------------------+
| DifferenceInTimestampDays |
+---------------------------+
|                        30 |
|                        24 | 
|                         5 |
+---------------------------+
3 rows in set (0.00 sec)