MySQL 中日期減一天可以使用 Date_sub 函數(shù)來實(shí)現(xiàn)。
首先,我們需要確定需要減去的日期和時間在數(shù)據(jù)表中對應(yīng)的列名, 假設(shè)為 date_col。則語句如下:
UPDATE table_name SET date_col = DATE_SUB(date_col, INTERVAL 1 DAY);
該語句將對 table_name 表中 date_col 列的所有數(shù)據(jù)進(jìn)行時間減一天的操作。其中 DATE_SUB 函數(shù)會將 date_col 列的值減去一個 INTERVAL,本例中是 1 天。修改完成后,數(shù)據(jù)表中的 date_col 列將被更新,所有值將比原先日期減去了一天。
以下是一個完整的 SQL 語句的例子,先創(chuàng)建一個數(shù)據(jù)表,在數(shù)據(jù)表中插入幾條數(shù)據(jù),然后按照實(shí)際時間逆序排序,最后對數(shù)據(jù)表執(zhí)行日期減一天的更新操作:
CREATE TABLE test_table ( id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, date_col DATE NOT NULL ); INSERT INTO test_table (date_col) VALUES ('2022-01-01'); INSERT INTO test_table (date_col) VALUES ('2022-01-02'); INSERT INTO test_table (date_col) VALUES ('2022-01-03'); INSERT INTO test_table (date_col) VALUES ('2022-01-04'); INSERT INTO test_table (date_col) VALUES ('2022-01-05'); SELECT * FROM test_table ORDER BY date_col DESC; UPDATE test_table SET date_col = DATE_SUB(date_col, INTERVAL 1 DAY); SELECT * FROM test_table ORDER BY date_col DESC;
以上就是 MySQL 中日期減一天的更新操作的實(shí)現(xiàn)方法,通過 Date_sub 函數(shù)快速實(shí)現(xiàn)時間的減法操作。此操作不僅可用于日期類型的列,也可以用于時間類型列。