可以將DATE 字串(例如「2010-04-29」)與儲存為DATETIME 的字元串值進行比較在MySQL 中。當您有一個可以過濾資料的日期選擇器並且您想要根據特定日期查詢表時,這會很有用。
要將 DATE 字串與 DATETIME 字串進行比較,您可以使用 DATE() 函數從 DATETIME 欄位中提取日期部分。例如,以下查詢將從「calendar」表中選擇「startTime」欄位的DATE() 值等於「2010-04-29」的所有行:
SELECT * FROM `calendar` WHERE DATE(startTime) = '2010-04-29'
另一種方式將DATE 字串與DATETIME 字串進行比較是使用CURDATE() 函數。 CURDATE() 函數以 DATE 字串形式傳回目前日期。然後,您可以將 CURDATE() 值與 DATETIME 字串進行比較,以查看兩個日期是否相同。例如,以下查詢將從「calendar」表中選擇「startTime」欄位等於當前日期的所有行:
SELECT * FROM `calendar` WHERE startTime = CURDATE()
將DATE 字串與DATETIME 字串進行比較時,重要的是請記住,DATE() 函數將從DATETIME 欄位截斷時間部分。這意味著,如果有兩個表示相同日期但時間不同的 DATETIME 字串,則 DATE() 函數將為這兩個字串傳回相同的值。因此,上面的查詢不會區分同一日期具有不同時間的行。
如果需要比較具有不同時間的 DATETIME 字串,可以使用 >= 和
SELECT * FROM `calendar` WHERE startTime >= '2010-04-29 10:00' AND startTime <= '2010-04-29 12:00'
透過使用上述技術,您可以輕鬆地將DATE 字串與MySQL 中的DATETIME 字串進行比較。這對於過濾資料、獲取有關特定日期的資訊以及執行其他與日期相關的任務非常有用。
以上是如何在 MySQL 中比較 DATE 字串與 DATETIME 字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!