MySQL 日期操作徹底解析!DATE_ADD 函數與 INTERVAL 子句從基礎到進階應用

目次

1. 簡介

MySQL 是廣泛用於網頁應用程式和資料庫管理的 RDBMS(關聯式資料庫管理系統)。其中,「日期操作」是許多開發者日常使用的關鍵功能之一。例如,設定定期提醒、擷取特定期間內的資料、計算排程等,處理日期的場景數不勝數。

特別是,日期加減的功能經常被使用。MySQL 提供了實現此功能的便利函數「DATE_ADD」或「DATE_SUB」,以及指定期間的「INTERVAL 子句」。透過活用這些,可以在保持程式碼簡潔的同時,高效執行複雜的日期計算。

本文將以易懂的方式,為初學者說明 MySQL 中的日期加減。從基本用法到應用範例,廣泛涵蓋,提供實務上有用的訣竅。此外,也會說明實際容易遇到的問題和注意事項,因此即使對日期操作沒有自信的人,也能安心學習。

閱讀完本文後,您將掌握 MySQL 日期操作所需的知識和實踐技巧,並能應用到自己的專案中。

2. MySQL 日期操作所需的基礎知識

在 MySQL 中處理日期時,首先理解日期資料型態和基本的概念非常重要。本節將說明 MySQL 日期操作所需的基礎知識。

日期型態的種類

MySQL 提供了幾種用來處理日期和時間的資料型態。理解各資料型態的特徵並適當選擇非常重要。

  1. DATE 型態
  • 記錄年月日。
  • 格式: YYYY-MM-DD
  • 範例: 2025-01-01
  • 主要在只需要日期的情況下使用(例如:生日、建立日期)。
  1. DATETIME 型態
  • 記錄年月日和時刻。
  • 格式: YYYY-MM-DD HH:MM:SS
  • 範例: 2025-01-01 12:30:45
  • 在需要日期和時間兩者的情況下使用(例如:活動的日期時間)。
  1. TIMESTAMP 型態
  • 基於 UTC(協定世界時)記錄日期時間,並可進行時區轉換。
  • 格式: YYYY-MM-DD HH:MM:SS
  • 範例: 2025-01-01 12:30:45
  • 在需要考慮時區的資料或系統記錄中使用。
  1. TIME 型態
  • 記錄時間。
  • 格式: HH:MM:SS
  • 範例: 12:30:45
  • 在需要純粹時間資料的情況下使用(例如:營業時間)。
  1. YEAR 型態
  • 僅記錄年份。
  • 格式: YYYY
  • 範例: 2025
  • 在以年為單位管理資料的情況下使用。

使用日期型態時的注意事項

  • 時區的設定
    MySQL 預設使用伺服器的時區設定。但是,如果應用程式使用不同的時區,可能會導致資料不一致。請視需要明確設定時區。
  • 無效日期的處理
    MySQL 預設在指定無效日期(例如: 2025-02-30)時會自動產生錯誤。然而,根據伺服器設定,有時會轉換為 NULL 或預設值,因此確認設定非常重要。

日期操作的主要使用案例

  1. 擷取特定期間的資料
  • 範例: 擷取過去一週的銷售資料。
  1. 排程的計算
  • 範例: 從使用者註冊日起 30 天後發送通知。
  1. 資料的有效期限管理
  • 範例: 管理優惠券的有效期限。

基礎知識的摘要

MySQL 提供了強大的工具來處理日期和時間。理解日期型態的特徵並適當選擇,可以提升資料庫設計和查詢的效率。下一節將詳細說明具體的日期操作方法「DATE_ADD 函式」。

3. DATE_ADD 函數的基本與應用

MySQL 的 DATE_ADD 函數是用來對日期加上指定期間的便利函數。本節將從 DATE_ADD 函數的基本用法到應用範例進行說明。

DATE_ADD 函數是什麼?

DATE_ADD 函數會對指定的日期加上「INTERVAL 子句」中指定的期間,並返回新的日期。此函數是簡化日期計算的基本工具。

基本語法:

DATE_ADD(date, INTERVAL value unit)
  • date: 操作的目標日期或時間。
  • value: 要加上的數值。
  • unit: 加上的期間單位(例如: DAY、MONTH、YEAR、HOUR、MINUTE、SECOND)。

可使用的 INTERVAL 單位

DATE_ADD 函數可以使用以下 INTERVAL 單位。

單位說明
SECOND
MINUTE
HOUR
DAY
WEEK
MONTH
YEAR

基本的使用範例

以下顯示 DATE_ADD 函數的具體範例。

  1. 計算 1 天後:
SELECT DATE_ADD('2025-01-01', INTERVAL 1 DAY);

結果: 2025-01-02

  1. 計算 1 個月後:
SELECT DATE_ADD('2025-01-01', INTERVAL 1 MONTH);

結果: 2025-02-01

  1. 計算 1 年後:
SELECT DATE_ADD('2025-01-01', INTERVAL 1 YEAR);

結果: 2026-01-01

  1. 計算 3 小時後:
SELECT DATE_ADD('2025-01-01 12:00:00', INTERVAL 3 HOUR);

結果: 2025-01-01 15:00:00

  1. 多單位加算(使用巢狀):
SELECT DATE_ADD(DATE_ADD('2025-01-01', INTERVAL 1 DAY), INTERVAL 3 HOUR);

結果: 2025-01-02 03:00:00

動態日期計算

DATE_ADD 函數也可以應用在動態計算的日期上。

  1. 計算今日起 7 天後:
SELECT DATE_ADD(CURDATE(), INTERVAL 7 DAY);

結果: 基於目前日期的 7 天後日期。

  1. 計算目前時間起 30 分鐘後:
SELECT DATE_ADD(NOW(), INTERVAL 30 MINUTE);

結果: 基於目前日期時間的 30 分鐘後日期時間。

應用範例: 實務中的活用

  1. 有效期限的計算:
    計算商品購買日起 30 天間的保證期間。
SELECT DATE_ADD(purchase_date, INTERVAL 30 DAY) AS expiry_date
FROM orders;
  1. 預約提醒的發送:
    計算活動開始日的 3 天前,並發送提醒。
SELECT DATE_ADD(event_date, INTERVAL -3 DAY) AS reminder_date
FROM events;
  1. 記錄的保存期限計算:
    計算目前日期起 90 天前,並刪除該日期之前的記錄。
DELETE FROM logs
WHERE log_date < DATE_ADD(CURDATE(), INTERVAL -90 DAY);

注意事項

  • 無效日期的處理:
    如果 DATE_ADD 函數的操作結果成為無效日期,MySQL 可能會返回 NULL。請事先確認輸入資料的格式正確。
  • 時區的影響:
    如果使用時區,CURRENT_TIMESTAMP 或 NOW() 的結果可能會受到影響。

DATE_ADD 函數是 MySQL 日期操作中最基本卻強大的工具。掌握此函數後,即可有效率地進行許多日期計算。下一節將詳細說明 DATE_SUB 函數。

4. DATE_SUB 函數的基本與應用

DATE_SUB 函數是與 DATE_ADD 函數相對應的 MySQL 功能,用於從日期減去指定的期間。本節將介紹 DATE_SUB 函數的基本用法,以及在實務中實用的應用範例。

什麼是 DATE_SUB 函數?

DATE_SUB 函數是從指定的日期或時間減去「INTERVAL 子句」中指定的期間,並返回新日期的函數。在日期操作的減法處理中是非常方便的工具。

基本語法:

DATE_SUB(date, INTERVAL value unit)
  • date: 操作目標的日期或時間。
  • value: 減去的數值。
  • unit: 減去期間的單位(例如: DAY, MONTH, YEAR, HOUR, MINUTE, SECOND)。

基本使用範例

以下顯示 DATE_SUB 函數的具體範例。

  1. 計算 1 天前:
SELECT DATE_SUB('2025-01-01', INTERVAL 1 DAY);

結果: 2024-12-31

  1. 計算 1 個月前:
SELECT DATE_SUB('2025-01-01', INTERVAL 1 MONTH);

結果: 2024-12-01

  1. 計算 1 年前:
SELECT DATE_SUB('2025-01-01', INTERVAL 1 YEAR);

結果: 2024-01-01

  1. 計算 3 小時前:
SELECT DATE_SUB('2025-01-01 12:00:00', INTERVAL 3 HOUR);

結果: 2025-01-01 09:00:00

  1. 多單位減算(使用巢狀):
SELECT DATE_SUB(DATE_SUB('2025-01-01', INTERVAL 1 DAY), INTERVAL 3 HOUR);

結果: 2024-12-31 21:00:00

動態日期計算

也可以以動態日期為基準使用 DATE_SUB 函數。

  1. 從今天計算 7 天前:
SELECT DATE_SUB(CURDATE(), INTERVAL 7 DAY);

結果: 目前日期的 7 天前。

  1. 從目前時間計算 30 分鐘前:
SELECT DATE_SUB(NOW(), INTERVAL 30 MINUTE);

結果: 目前日期時間的 30 分鐘前。

應用範例: 實務中的活用

  1. 擷取過去 30 天間的資料:
SELECT * 
FROM orders
WHERE order_date > DATE_SUB(CURDATE(), INTERVAL 30 DAY);
  1. 刪除 90 天前的資料:
DELETE FROM logs
WHERE log_date < DATE_SUB(CURDATE(), INTERVAL 90 DAY);
  1. 提醒通知:
    在活動開始前 1 天設定提醒。
SELECT event_name, DATE_SUB(event_date, INTERVAL 1 DAY) AS reminder_date
FROM events;
  1. 班次的計算:
    以勤務班次的開始時間為基準計算 3 小時前。
SELECT DATE_SUB(shift_start, INTERVAL 3 HOUR) AS preparation_time
FROM work_shifts;

注意事項

  • 無效日期的處理:
    如果減算結果不是有效的日期,MySQL 可能會返回 NULL。因此,確認原始日期的有效性非常重要。
  • 時區的影響:
    如果伺服器的時區設定不同,DATE_SUB 得到的結果可能會有偏差。必要時請使用CONVERT_TZ()函數。

DATE_SUB 函數與 DATE_ADD 函數同樣是 MySQL 日期操作中重要的工具。透過簡潔的減算處理,可以提升資料的管理與分析效率。下一節將說明「5. INTERVAL 子句的詳細與活用方法」。

5. INTERVAL 子句的詳細與活用方法

INTERVAL 子句是用於在 MySQL 中操作日期或時間的子句,與 DATE_ADD 函數或 DATE_SUB 函數結合使用,以加算或減算期間。本節將從 INTERVAL 子句的基本到應用進行詳細說明。

INTERVAL 子句的基本

INTERVAL 子句是用來指定對操作目標日期操作多少期間的子句。通常與 DATE_ADD 或 DATE_SUB 函數一起使用,能以簡潔的語法進行強大的日期操作。

基本語法:

SELECT date + INTERVAL value unit;
SELECT date - INTERVAL value unit;
  • date: 操作目標的日期或時間。
  • value: 加法或減法的數值。
  • unit: 操作的單位(例如: DAY, MONTH, YEAR, HOUR, MINUTE, SECOND)。

可使用的單位

INTERVAL 子句中可使用的單位如下所述。

單位說明
SECOND
MINUTE
HOUR
DAY
WEEK
MONTH
QUARTER季度
YEAR
SECOND_MICROSECOND秒與微秒
MINUTE_MICROSECOND分與微秒
MINUTE_SECOND分與秒
HOUR_MICROSECOND時與微秒
HOUR_SECOND時與秒
HOUR_MINUTE時與分
DAY_MICROSECOND日與微秒
DAY_SECOND日與秒
DAY_MINUTE日與分
DAY_HOUR日與時
YEAR_MONTH年與月

基本使用範例

  1. 對日期加 1 天:
SELECT '2025-01-01' + INTERVAL 1 DAY;

結果: 2025-01-02

  1. 從日期時間減 3 小時:
SELECT '2025-01-01 12:00:00' - INTERVAL 3 HOUR;

結果: 2025-01-01 09:00:00

  1. 從目前日期時間減 10 分鐘:
SELECT NOW() - INTERVAL 10 MINUTE;
  1. 從月底計算下個月的月初:
SELECT LAST_DAY('2025-01-01') + INTERVAL 1 DAY;

結果: 下個月的 1 日。

應用範例

  1. 日期範圍的計算
    過去 30 天的範圍計算。
SELECT *
FROM orders
WHERE order_date BETWEEN CURDATE() - INTERVAL 30 DAY AND CURDATE();
  1. 計算下一個季度的開始日
SELECT '2025-01-01' + INTERVAL 1 QUARTER;

結果: 下一個季度開始日。

  1. 對應時區的時間計算
    在伺服器的預設時區計算 1 小時後的時間。
SELECT CONVERT_TZ(NOW(), 'SYSTEM', '+09:00') + INTERVAL 1 HOUR;
  1. 進行複雜計算
    從今日日期計算 2 週後的日期,並取得該月的月末日。
SELECT LAST_DAY(CURDATE() + INTERVAL 14 DAY);

注意事項

  1. 注意計算結果的型別
    INTERVAL 子句的計算結果會維持原始型別(DATE 型或 DATETIME 型)。請正確處理資料型別。
  2. 月末日的處理
    對月末日進行加減時,可能會調整為次月的月末或月初。例如,對 2025-01-31 加 1 個月,結果會是 2025-02-28(非閏年情況)。
  3. 時區的影響
    如果伺服器與客戶端設定不同的時區,日期時間計算的結果可能會產生偏差。

INTERVAL 子句是簡化 MySQL 日期操作的重要工具。善用其彈性,即可輕鬆進行複雜的日期計算。下一節將說明「6. 實用的應用範例」。

6. 實用應用範例

使用 MySQL 的 DATE_ADD 函數或 INTERVAL 子句,即可輕鬆進行複雜的日期計算或動態處理。本節將介紹幾個在實務工作中實用的應用範例。

1. 特定期間內的資料擷取

在資料分析或報表製作中,經常需要擷取特定期間內記錄的資料。

範例 1: 取得過去 30 天內的銷售資料

SELECT *
FROM sales
WHERE sale_date >= CURDATE() - INTERVAL 30 DAY;

說明: 擷取從目前日期回溯 30 天後的資料。

範例 2: 取得上個月的資料

SELECT *
FROM orders
WHERE order_date BETWEEN DATE_SUB(CURDATE(), INTERVAL 1 MONTH) AND CURDATE();

說明: 取得上個月的訂單資料。

2. 事件提醒設定

可以以事件的開始日期或截止日期為基準,設定提醒通知。

範例: 事件開始前 3 天發送通知

SELECT event_name, DATE_SUB(event_date, INTERVAL 3 DAY) AS reminder_date
FROM events;

說明: 計算事件開始日前 3 天的日期,並將其設定為通知日期。

3. 有效期限管理

以註冊日期為基準,計算有效期限的處理在許多應用程式中都被使用。

範例 1: 計算註冊日後 30 天的有效期限

SELECT user_id, registration_date, DATE_ADD(registration_date, INTERVAL 30 DAY) AS expiry_date
FROM users;

說明: 計算註冊日後 30 天的日期作為有效期限。

範例 2: 刪除已過期的資料

DELETE FROM sessions
WHERE expiry_date < NOW();

說明: 以目前日期時間為基準,刪除已過期的會話資料。

4. 班表或排程計算

這是在勤務時間或排程管理中,以開始時間或結束時間為基準調整時間的範例。

範例: 計算班表開始時間前 1 小時

SELECT shift_id, shift_start, DATE_SUB(shift_start, INTERVAL 1 HOUR) AS preparation_time
FROM shifts;

說明: 計算班表開始時間前 1 小時,並顯示為準備時間。

5. 結合多個 INTERVAL 的計算

這是結合多個期間進行計算的範例。

範例 1: 取得今日起 1 個月後的月底日期

SELECT LAST_DAY(CURDATE() + INTERVAL 1 MONTH);

說明: 以目前日期為基準,計算 1 個月後的月底日期。

範例 2: 在註冊日後 1 年追加 3 個月的寬限期

SELECT user_id, DATE_ADD(DATE_ADD(registration_date, INTERVAL 1 YEAR), INTERVAL 3 MONTH) AS final_deadline
FROM users;

說明: 以註冊日期為基準,計算 1 年後再追加 3 個月的寬限期間。

6. 資料清理與最佳化

這是刪除舊資料以最佳化資料庫的範例。

範例: 刪除過去 90 天內無存取的用戶

DELETE FROM user_activity
WHERE last_login < CURDATE() - INTERVAL 90 DAY;

說明: 刪除過去 90 天內無登入記錄的用戶。

注意事項

  • 計算結果驗證: 特別是月底日期或閏年等日期邊界條件,請務必注意。
  • 資料類型一致性: 正確指定日期類型(DATE 型、DATETIME 型等),即可防止錯誤。
  • 時區考量: 若在不同時區間進行操作,請使用 CONVERT_TZ() 函數。

透過 DATE_ADD 函數與 INTERVAL 子句的應用,即可輕鬆且有效率地處理實務上的日期操作。下一節將詳細說明「7. 注意事項與最佳實務」。

7. 注意事項與最佳實務

MySQL 中的日期操作非常方便,但在實際使用時,需要了解一些注意事項和最佳實務。本節將說明日期操作時應注意的要點,以及有效利用的方法。

注意事項

1. 資料類型的整合性

  • 問題點: 在 MySQL 中,操作日期或時間時使用的資料類型(DATE 型、DATETIME 型、TIMESTAMP 型等)可能會導致結果不同。
  • 範例:
  SELECT DATE_ADD('2025-01-01', INTERVAL 1 DAY); -- 有效的操作
  SELECT DATE_ADD('Invalid Date', INTERVAL 1 DAY); -- 無效日期時返回 NULL
  • 對策: 事先驗證輸入資料是否為正確格式,並適當選擇資料類型。

2. 無效日期的處理

  • 問題點: 在包含月末日或閏年的計算中,可能會發生無效日期。
  • 範例:
  SELECT DATE_ADD('2025-01-31', INTERVAL 1 MONTH); -- 結果:2025-02-28

在這種情況下,MySQL 會自動調整,但可能與預期結果不同。

  • 對策: 處理月末日時,使用 LAST_DAY() 函數進行驗證。
  SELECT LAST_DAY('2025-01-31') + INTERVAL 1 MONTH;

3. 時區的考量

  • 問題點: 如果伺服器的時區與應用程式的時區不同,可能會導致資料不一致或意外結果。
  • 範例:
  SELECT NOW(); -- 依賴伺服器的時區
  • 對策: 明確設定時區。
  SELECT CONVERT_TZ(NOW(), 'SYSTEM', '+09:00'); -- 轉換為日本時間

4. 複雜計算中的效能

  • 問題點: 包含複雜日期計算的查詢可能會影響執行速度。
  • 對策: 減少不必要的計算,並利用索引優化查詢。

最佳實務

1. 使用標準格式

  • 日期格式應保持一致。
  • 推薦格式: YYYY-MM-DD(DATE 型)、YYYY-MM-DD HH:MM:SS(DATETIME 型)。
  • 範例:
  SELECT DATE_FORMAT(NOW(), '%Y-%m-%d');

2. 活用函數組合

  • 使用 DATE_ADD 或 DATE_SUB 與 LAST_DAYCURDATE 組合,可以進行更靈活的計算。
  • 範例:
  SELECT LAST_DAY(DATE_ADD(CURDATE(), INTERVAL 1 MONTH));

3. 計劃性地進行動態資料操作

  • 操作動態日期時,將查詢分割並逐步處理。
  • 範例:
  SET @next_month = DATE_ADD(CURDATE(), INTERVAL 1 MONTH);
  SELECT LAST_DAY(@next_month);

4. 安全的時區管理

  • 在伺服器與客戶端之間統一時區。
  • 範例:
  SET time_zone = '+09:00';

5. 在測試環境中驗證

  • 特別是複雜的日期計算或不同時區的計算,應事先進行測試。

避免日期操作中的陷阱

日期操作是對資料庫設計和查詢精確度有重大影響的重要技能。掌握注意事項並遵循最佳實務,即可防止問題並實現高效的資料操作。

8. FAQ

MySQL 的日期操作相關常見問題(FAQ)已彙整完畢。針對初學者到中級者容易產生疑問的要點,以簡潔的方式回答。

Q1: DATE_ADD 函數與使用 + 運算子的 INTERVAL 子句有何不同?

A1:

  • DATE_ADD() 函數是專門用於日期計算的函數,在錯誤處理和型別轉換方面表現優異。
  • + INTERVAL 子句雖然能進行簡單計算,但可能發生型別轉換錯誤。

範例:DATE_ADD 的使用:

SELECT DATE_ADD('2025-01-01', INTERVAL 1 DAY);

範例:+ 運算子與 INTERVAL 的使用:

SELECT '2025-01-01' + INTERVAL 1 DAY;

一般而言,建議使用 DATE_ADD()

Q2: DATE_ADD 函數能否同時加算多個期間?

A2:
否。DATE_ADD() 函數一次只能指定一個期間。不過,可以透過巢狀使用多個 DATE_ADD() 函數來應對。

範例:加算多個期間:

SELECT DATE_ADD(DATE_ADD('2025-01-01', INTERVAL 1 DAY), INTERVAL 1 MONTH);

Q3: MySQL 中如何變更日期格式?

A3:
可以使用 DATE_FORMAT() 函數,將其變更為任意格式。

範例:格式變更:

SELECT DATE_FORMAT(NOW(), '%Y/%m/%d %H:%i:%s') AS formatted_date;

結果: 2025/01/01 12:30:45

Q4: 若將 1 個月加算至月末日,會有何種行為?

A4:
MySQL 會自動調整,結果為下個月的月末日。

範例:

SELECT DATE_ADD('2025-01-31', INTERVAL 1 MONTH);

結果: 2025-02-28

此調整在處理日期型別時相當便利,但需確認是否符合預期結果。

Q5: 如何進行考量時區的日期計算?

A5:
可以使用 MySQL 的 CONVERT_TZ() 函數指定時區來應對。

範例:從 UTC 轉換至日本時間:

SELECT CONVERT_TZ('2025-01-01 12:00:00', 'UTC', '+09:00') AS japan_time;

Q6: 若指定無效日期,DATE_ADD 函數會如何處理?

A6:
若指定無效日期(例如 2025-02-30),MySQL 會傳回 NULL

範例:

SELECT DATE_ADD('2025-02-30', INTERVAL 1 DAY);

結果: NULL

建議事先驗證輸入值。

Q7: 如何以過去或未來日期作為條件基準?

A7:
使用 DATE_ADDDATE_SUB 計算基準日期,並在條件式中使用該結果。

範例:擷取過去 30 天資料:

SELECT * 
FROM sales
WHERE sale_date >= CURDATE() - INTERVAL 30 DAY;

Q8: 使用多個時區時的最佳實務是?

A8:

  • 將所有日期時間資料儲存為 UTC
  • 依需求在客戶端轉換時區。

範例:資料儲存時統一為 UTC:

SET time_zone = '+00:00';

Q9: MySQL 中能否將日期與時間分開處理?

A9:
可以,使用 DATE() 函數或 TIME() 函數來擷取日期部分或時間部分。

範例 1:僅擷取日期:

SELECT DATE(NOW());

範例 2:僅擷取時間:

SELECT TIME(NOW());

Q10: MySQL 的 INTERVAL 子句能否使用未支援的單位?

A10:
MySQL 的 INTERVAL 子句可使用的單位是固定的。若要使用其他單位,需轉換為適當單位。

9. 總結

MySQL 中的日期操作是資料庫設計與運營中非常重要的技能。透過活用 DATE_ADD 函數、DATE_SUB 函數以及 INTERVAL 子句,即可輕鬆進行複雜的日期計算。

回顧文章要點

  1. 日期類型的基礎:
  • MySQL 中需要正確區分使用 DATE 型、DATETIME 型、TIMESTAMP 型等日期類型。
  1. DATE_ADD 函數與 DATE_SUB 函數:
  • 這是進行日期加減法時方便的函數,以簡單的語法即可進行靈活的操作。
  1. INTERVAL 子句:
  • 指定年、月、日、時間等單位,是用以效率化日期計算的重要工具。
  1. 實務中的應用範例:
  • 可透過過去或未來的資料擷取、有效期限管理、提醒設定等各種使用情境來活用。
  1. 注意事項與最佳實務:
  • 資料類型的整合性、時區的影響、月末日的調整等,在日期操作中應考慮的要點,理解這些非常重要。
  1. FAQ:
  • 提供了初學者常遇到的疑問與挑戰的具體解決方案。

今後步驟

  • 將學到的內容應用於實踐:
  • 在自己的專案中試著使用 DATE_ADD 或 DATE_SUB 來進行日期操作吧。
  • 考量時區的設計:
  • 在多個時區運行的資料庫中,時區的管理與日期計算的精確度非常重要。
  • 進一步的最佳化:
  • 透過注重效能的查詢設計與索引的活用,實現高效的資料操作。

透過掌握 MySQL 的日期操作,資料的管理與分析將大幅提升效率。以本文章為參考,積極活用有助於實務的知識吧。