Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Ví dụ về TIMESTAMPDIFF () - MySQL

MySQL TIMESTAMPDIFF() hàm được sử dụng để tìm sự khác biệt giữa hai biểu thức ngày tháng hoặc ngày giờ. Bạn cần chuyển hai giá trị ngày / giờ, cũng như đơn vị để sử dụng để xác định sự khác biệt (ví dụ: ngày , tháng , vân vân). TIMESTAMPDIFF() sau đó hàm sẽ trả về sự khác biệt trong đơn vị được chỉ định.

Cú pháp

Đầu tiên, đây là cách thực hiện cú pháp:

TIMESTAMPDIFF(unit,datetime_expr1,datetime_expr2)

Đây, unit là đơn vị để thể hiện sự khác biệt (ví dụ:ngày, tháng, năm, v.v.). datetime_expr1 là giá trị ngày / datetime đầu tiên và datetime_expr2 là thứ hai.

Hàm này trừ đi datetime_expr1 từ datetime_expr2 và trả về kết quả trong unit S. Kết quả được trả về dưới dạng số nguyên.

Đơn vị hợp lệ

Đơn vị unit đối số có thể là bất kỳ đối số nào sau đây:

  • MICROSECOND
  • SECOND
  • MINUTE
  • HOUR
  • DAY
  • WEEK
  • MONTH
  • QUARTER
  • YEAR

Ví dụ 1 - Sự khác biệt về số ngày

Dưới đây là một ví dụ để chứng minh cách sử dụng cơ bản của hàm này. Ở đây, chúng tôi so sánh hai biểu thức ngày và trả về sự khác biệt giữa chúng theo ngày.

SELECT 
  TIMESTAMPDIFF(DAY,'2022-02-01','2022-02-21')
  AS 'Difference in Days';

Kết quả:

+--------------------+
| Difference in Days |
+--------------------+
|                 20 |
+--------------------+

Ví dụ 2 - Chênh lệch về số giờ

Trong ví dụ này, chúng tôi so sánh các giá trị giống như trong ví dụ trước, ngoại trừ ở đây, chúng tôi trả lại sự khác biệt trong giờ .

SELECT 
  TIMESTAMPDIFF(HOUR,'2022-02-01','2022-02-21')
  AS 'Difference in Hours';

Kết quả:

+---------------------+
| Difference in Hours |
+---------------------+
|                 480 |
+---------------------+

Ví dụ 3 - Ví dụ về 'datetime'

Dưới đây là một ví dụ trả lại sự khác biệt trong vài phút. Trong trường hợp này, chúng tôi so sánh hai giá trị ngày giờ (thay vì chỉ các giá trị ngày như trong các ví dụ trước).

SELECT 
  TIMESTAMPDIFF(MINUTE,'2022-02-01 10:30:27','2022-02-01 10:45:27')
  AS 'Difference in Minutes';

Kết quả:

+-----------------------+
| Difference in Minutes |
+-----------------------+
|                    15 |
+-----------------------+

Ví dụ 4 - Giây phân số

Bạn có thể xuống ngay đến micro giây (6 chữ số) nếu cần.

SELECT 
  TIMESTAMPDIFF(MICROSECOND,'2022-02-01 10:30:27.000000','2022-02-01 10:30:27.123456') 
  AS 'Difference in Microseconds';

Kết quả:

+----------------------------+
| Difference in Microseconds |
+----------------------------+
|                     123456 |
+----------------------------+

Ví dụ 5 - Kết quả phủ định

Như mong đợi, nếu đối số ngày / giờ đầu tiên lớn hơn đối số thứ hai, kết quả sẽ là một số nguyên âm.

SELECT 
  TIMESTAMPDIFF(DAY,'2022-02-21','2022-02-01')
  AS 'Difference in Days';

Kết quả:

+--------------------+
| Difference in Days |
+--------------------+
|                -20 |
+--------------------+


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ví dụ về TIMESTAMPDIFF () - MySQL

  2. Chèn vào bảng MySQL hoặc cập nhật nếu tồn tại

  3. Cách tính phần trăm tăng trưởng hàng tuần trong MySQL

  4. Cách tạo cơ sở dữ liệu MySQL bằng giao diện dòng lệnh (CLI)

  5. Lỗi:Không gian bảng cho bảng xxx tồn tại. Vui lòng XÓA không gian bảng trước khi NHẬP