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

8 cách để thêm một giờ vào một ngày trong MariaDB

Có nhiều cách để thực hiện số học ngày tháng trong MariaDB. Điều này bao gồm việc cộng hoặc trừ một số lượng nhất định của một phần ngày nhất định khỏi giá trị ngày hoặc giờ.

Trong bài viết này, tôi trình bày 8 cách để thêm một giờ vào giá trị ngày giờ trong MariaDB.

DATE_ADD() Chức năng

DATE_ADD() cho phép bạn thêm một số tiền vào biểu thức ngày tháng hoặc ngày giờ. Điều này bao gồm việc thêm các phần thời gian, chẳng hạn như giờ.

Ví dụ:

SELECT DATE_ADD('2021-05-01 10:00:00', INTERVAL 1 HOUR);

Kết quả:

+--------------------------------------------------+
| DATE_ADD('2021-05-01 10:00:00', INTERVAL 1 HOUR) |
+--------------------------------------------------+
| 2021-05-01 11:00:00                              |
+--------------------------------------------------+

Trong trường hợp này, tôi đã thêm một giờ vào biểu thức ngày giờ.

Đây là những gì sẽ xảy ra nếu tôi chỉ cung cấp ngày:

SELECT DATE_ADD('2021-05-01', INTERVAL 1 HOUR);

Kết quả:

+-----------------------------------------+
| DATE_ADD('2021-05-01', INTERVAL 1 HOUR) |
+-----------------------------------------+
| 2021-05-01 01:00:00                     |
+-----------------------------------------+

Phần thời gian được thêm vào kết quả và giả định rằng thời gian ban đầu là 00:00:00 .

Nếu bạn cần thêm nhiều hơn một giờ, chỉ cần sử dụng số đó thay vì 1 . Lưu ý rằng HOUR từ khóa vẫn không thuộc số nhiều bất kể:

SELECT DATE_ADD('2021-05-01 10:00:00', INTERVAL 2 HOUR);

Kết quả:

+--------------------------------------------------+
| DATE_ADD('2021-05-01 10:00:00', INTERVAL 2 HOUR) |
+--------------------------------------------------+
| 2021-05-01 12:00:00                              |
+--------------------------------------------------+

Cũng có thể sử dụng một đơn vị ngày / giờ khác với số lượng thích hợp của đơn vị đó. Do đó, bạn có thể chỉ định một số phút nhất định, chẳng hạn như 60 hoặc 120.

Ví dụ:

SELECT DATE_ADD('2021-05-01 10:00:00', INTERVAL 60 MINUTE);

Kết quả:

+-----------------------------------------------------+
| DATE_ADD('2021-05-01 10:00:00', INTERVAL 60 MINUTE) |
+-----------------------------------------------------+
| 2021-05-01 11:00:00                                 |
+-----------------------------------------------------+

Bạn cũng có thể sử dụng đơn vị ngày / giờ tổng hợp để thêm nhiều đơn vị. Ví dụ:nếu bạn muốn thêm 1 giờ 30 phút, bạn có thể làm như sau:

SELECT 
DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:30' HOUR_MINUTE);

Kết quả:

+--------------------------------------------------------------+
| DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:30' HOUR_MINUTE) |
+--------------------------------------------------------------+
| 2021-05-01 11:30:00                                          |
+--------------------------------------------------------------+

Xem Đơn vị ngày và giờ MariaDB để biết danh sách đầy đủ các đơn vị ngày / giờ.

ADDDATE() Chức năng

Một cách khác để thêm giờ vào biểu thức ngày giờ là sử dụng ADDDATE() hàm số. Hàm này có hai cú pháp:

  1. Một cú pháp cho phép bạn thêm một số ngày vào một ngày, đây không phải là những gì chúng tôi đang làm ở đây (trừ khi chúng tôi dự định thêm 24 giờ).
  2. Cú pháp khác giống như với DATE_ADD() chức năng trên. Khi sử dụng cú pháp này, ADDDATE() là từ đồng nghĩa với DATE_ADD() .

Ví dụ:

SELECT ADDDATE('2021-05-01 10:00:00', INTERVAL 1 HOUR);

Kết quả:

+-------------------------------------------------+
| ADDDATE('2021-05-01 10:00:00', INTERVAL 1 HOUR) |
+-------------------------------------------------+
| 2021-05-01 11:00:00                             |
+-------------------------------------------------+

DATE_SUB() Chức năng

DATE_SUB() chức năng cho phép bạn trừ một số tiền cho một ngày. Tuy nhiên, nếu bạn cung cấp một giá trị âm để trừ đi, thì giá trị đó sẽ được thêm vào đến ngày.

Ví dụ:

SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL -1 HOUR);

Kết quả:

+---------------------------------------------------+
| DATE_SUB('2021-05-01 10:00:00', INTERVAL -1 HOUR) |
+---------------------------------------------------+
| 2021-05-01 11:00:00                               |
+---------------------------------------------------+

SUBDATE() Chức năng

SUBDATE() hàm là từ đồng nghĩa với DATE_SUB() khi sử dụng cú pháp sau.

Ví dụ:

SELECT SUBDATE('2021-05-01 10:00:00', INTERVAL -1 HOUR);

Kết quả:

+--------------------------------------------------+
| SUBDATE('2021-05-01 10:00:00', INTERVAL -1 HOUR) |
+--------------------------------------------------+
| 2021-05-01 11:00:00                              |
+--------------------------------------------------+

+ Nhà điều hành

Một tùy chọn khác là sử dụng + nhà điều hành.

+ toán tử được sử dụng để thực hiện phép cộng và chúng ta có thể sử dụng toán tử này vào ngày tháng, cùng với đơn vị ngày / giờ hiện hành để thêm một số giờ nhất định vào ngày của chúng ta.

Ví dụ:

SELECT '2021-05-01 10:00:00' + INTERVAL 1 HOUR;

Kết quả:

+-----------------------------------------+
| '2021-05-01 10:00:00' + INTERVAL 1 HOUR |
+-----------------------------------------+
| 2021-05-01 11:00:00                     |
+-----------------------------------------+

- Nhà điều hành

- toán tử có thể được sử dụng để trừ một số tiền cho một ngày. Nhưng nếu nó được sử dụng để trừ một số âm, thì kết quả là một số dương được thêm vào ngày:

SELECT '2021-05-01 10:00:00' - INTERVAL -1 HOUR;

Kết quả:

+------------------------------------------+
| '2021-05-01 10:00:00' - INTERVAL -1 HOUR |
+------------------------------------------+
| 2021-05-01 11:00:00                      |
+------------------------------------------+

ADDTIME() Chức năng

Bạn có thể sử dụng ADDTIME() hàm để thêm một số giờ vào biểu thức ngày giờ.

Ví dụ:

SELECT ADDTIME('2021-05-01 10:30:45', '01:0:0');

Kết quả:

+------------------------------------------+
| ADDTIME('2021-05-01 10:30:45', '01:0:0') |
+------------------------------------------+
| 2021-05-01 11:30:45                      |
+------------------------------------------+

Một lợi ích của chức năng này là bạn cũng có thể thay đổi các đơn vị thời gian khác, chẳng hạn như phút, giây, v.v.

SUBTIME() Chức năng

Ngoài ra, bạn có thể chuyển đổi nó và sử dụng SUBTIME() với giá trị âm nếu bạn muốn:

SELECT SUBTIME('2021-05-01 10:30:45', '-01:0:0');

Kết quả:

+-------------------------------------------+
| SUBTIME('2021-05-01 10:30:45', '-01:0:0') |
+-------------------------------------------+
| 2021-05-01 11:30:45                       |
+-------------------------------------------+

Các đơn vị ngày và giờ khác

Các ví dụ trên thêm một số giờ vào giá trị ngày giờ, nhưng chúng ta có thể sử dụng các kỹ thuật tương tự để thêm bất kỳ đơn vị ngày / giờ nào. Xem Đơn vị ngày và giờ MariaDB để biết danh sách đầy đủ các đơn vị ngày / giờ có thể được sử dụng với các chức năng và toán tử ở trên.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách cài đặt và bảo mật MariaDB trên CentOS 8

  2. MariaDB JSON_LOOSE () Giải thích

  3. Những gì khách hàng của chúng tôi mong muốn:Giới thiệu Tài liệu Doanh nghiệp của MariaDB

  4. MariaDB JSON_REPLACE () Giải thích

  5. Cách chạy SHOW LOCALES trong MariaDB