MariaDB cung cấp một số cách để thêm một năm hoặc một số năm nhất định vào một ngày nhất định. Ví dụ:bạn có thể muốn thêm 1 năm, 10 năm, 30 năm, v.v.
Dưới đây là 6 cách để thêm một năm vào một ngày trong MariaDB.
DATE_ADD()
Chức năng
DATE_ADD()
chức năng cho phép bạn thêm một số tiền vào một ngày. Ví dụ:bạn có thể thêm một số ngày, tuần, tháng, năm, v.v.
Ví dụ:
SELECT DATE_ADD('2021-05-01', INTERVAL 1 YEAR);
Kết quả:
+ ----------------------------------------- + | DATE_ADD ('2021-05-01', INTERVAL 1 NĂM) | + ---------------------------------- ------- + | 2022-05-01 | + ----------------------------------------- +
Không có quy tắc nào nói rằng nó chỉ có thể là 1 năm. Bạn có thể thêm nhiều năm. Dù bằng cách nào, YEAR
từ khóa không phải là số nhiều:
SELECT DATE_ADD('2021-05-01', INTERVAL 10 YEAR);
Kết quả:
+ ------------------------------------------ + | DATE_ADD ('2021-05-01', INTERVAL 10 NĂM) | + ---------------------------------- -------- + | 2031-05-01 | + ------------------------------------------ +
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ị đó. Tuy nhiên, cách tiếp cận này nên được sử dụng một cách thận trọng, vì nó có thể dẫn đến kết quả không mong muốn.
Ví dụ:
SELECT
DATE_ADD('2021-05-01', INTERVAL 365 DAY) AS Days,
DATE_ADD('2021-05-01', INTERVAL 52 WEEK) AS Weeks,
DATE_ADD('2021-05-01', INTERVAL 12 MONTH) AS Months,
DATE_ADD('2021-05-01', INTERVAL 1 YEAR) AS Years;
Kết quả:
+ ------------ + ------------ + ------------ + ------- ----- + | Ngày | Tuần | Tháng | Năm | + ------------ + ------------ + ------------ + -------- ---- + | 2022-05-01 | 2022-04-30 | 2022-05-01 | 2022-05-01 | + ------------ + ------------ + ------------ + ---- -------- +
Trong trường hợp này, thêm 52 tuần có kết quả khác với việc sử dụng 365 ngày, 12 tháng và 1 năm.
Nếu chúng tôi dời ngày về sau một vài năm, chúng tôi thậm chí còn có sự mâu thuẫn hơn nữa:
SELECT
DATE_ADD('2023-05-01', INTERVAL 365 DAY) AS Days,
DATE_ADD('2023-05-01', INTERVAL 52 WEEK) AS Weeks,
DATE_ADD('2023-05-01', INTERVAL 12 MONTH) AS Months,
DATE_ADD('2023-05-01', INTERVAL 1 YEAR) AS Years;
Kết quả:
+ ------------ + ------------ + ------------ + ------- ----- + | Ngày | Tuần | Tháng | Năm | + ------------ + ------------ + ------------ + -------- ---- + | 2024-04-30 | 2024-04-29 | 2024-05-01 | 2024-05-01 | + ------------ + ------------ + ------------ + ---- -------- +
Lần này sử dụng MONTH
và YEAR
trả về cùng một kết quả, nhưng DAY
và WEEK
trả về hai ngày khác nhau, cả hai ngày này đều khác với MONTH
và YEAR
kết quả.
ADDDATE()
Chức năng
Một cách khác để thêm một năm vào một ngày là sử dụng ADDDATE()
hàm số. Hàm này có hai cú pháp. Một cú pháp cho phép bạn thêm một số ngày vào một ngày. Cú pháp khác giống 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', INTERVAL 1 YEAR);
Kết quả:
+ ---------------------------------------- + | THÊM ('2021-05-01', INTERVAL 1 NĂM) | + ---------------------------------- ------ + | 2022-05-01 | + ---------------------------------------- +
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', INTERVAL -1 YEAR);
Kết quả:
+ ------------------------------------------ + | DATE_SUB ('2021-05-01', INTERVAL -1 NĂM) | + --------------------------------- --------- + | 2022-05-01 | + ------------------------------------------ +
SUBDATE()
Chức năng
SUBDATE()
hàm là từ đồng nghĩa vớiDATE_SUB()
khi sử dụng cú pháp sau.Ví dụ:
SELECT SUBDATE('2021-05-01', INTERVAL -1 YEAR);
Kết quả:
+ ----------------------------------------- + | SUBDATE ('2021-05-01', INTERVAL -1 NĂM) | + --------------------------------- -------- + | 2022-05-01 | + ----------------------------------------- +
+
Nhà điều hànhMộ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 nó vào ngày tháng, cùng với đơn vị ngày / giờ hiện hành để thêm một số năm nhất định vào ngày của chúng ta.Ví dụ:
SELECT '2021-05-01' + INTERVAL 1 YEAR;
Kết quả:
+ -------------------------------- + | '2021-05-01' + INTERVAL 1 NĂM | + -------------------------------- + | 2022-05-01 | + -------------------------------- +
-
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' - INTERVAL -1 YEAR;
Kết quả:
+ --------------------------------- + | '2021-05-01' - INTERVAL -1 NĂM | + --------------------------------- + | 2022-05-01 | + --------------------------------- +Các đơn vị ngày và giờ khác
Các ví dụ trên thêm một số năm vào ngày, 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 hàm và toán tử ở trên.