首頁 >資料庫 >mysql教程 >如何偵測 MySQL 中重疊的日期範圍?

如何偵測 MySQL 中重疊的日期範圍?

DDD
DDD原創
2024-12-13 15:28:11940瀏覽

How to Detect Overlapping Date Ranges in MySQL?

確定 MySQL中的重疊日期範圍

要確定給定表中衝突的日期範圍,請考慮使用以下內容的自訂查詢criteria:

WHERE new_start < existing_end AND new_end > existing_start

其中:

  • new_start 和new_end表示要插入的新會話的日期範圍
  • existing_start 和命題_end 表示要插入的新會話的日期範圍現有會話

此查詢有效地識別與建議的新會話相交的日期範圍會話,與原始查詢相比,提供了更精細的結果。

這是查詢的更新版本:

SELECT *
FROM session
WHERE "2010-01-05" < end_date AND "2010-01-25" > start_date;

此查詢僅傳回衝突的會話,忽略不重疊的會話:

+----+------------+------------+
| id | start_date | end_date   |
+----+------------+------------+
|  2 | 2010-01-20 | 2010-01-30 |
+----+------------+------------+

修改後的可查詢確保僅識別重疊會話,從而為衝突偵測提供更精確的結果。

以上是如何偵測 MySQL 中重疊的日期範圍?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn