2017-08-10 172 views
0

我的SQL表我的日期時間格式看起來像這樣PHP SQL查詢從預定義的日期時間格式比較日期

表1:

Col1 
FromDate 
-------------------------- 
10 August 2017 - 02:10 pm 



Col2 
ToDate 
-------------------------- 
10 August 2017 - 08:00 pm 
  • 什麼是適用的SQL SELECT查詢,或php代碼檢查..

    $submitFrdate = "10 August 2017 - 3:00PM"; $submitTodate = "10 August 2017 - 6:00PM";

    只有當來自第一個或第二個變量的任何日期與任何2個表列的日期衝突時,纔會將其與使用DATE的表進行比較?據我所知,我可以使用substr()修整時間戳,使其僅爲10 August 2017,但表格中的數據包含時間。除此之外,我不確定什麼是最簡單的方法來確保提交的數據沒有打到任何一列的日期,無論時間如何。

在此先感謝。

回答

0

MySQL有一個名爲STR_TO_DATE()的函數,它可以將日期字符串反向格式化爲MySQL的本機日期格式。然後你可以在SQL中進行比較。

也許更好的解決方案是使用DATETIME類型的列。然後你可以直接與他們進行比較。

+0

有沒有辦法從我當前的日期格式,因爲顯然我的數據類型是一個varchar將它轉換爲str_to_date()格式以供查詢使用? –

+0

或以其他方式我需要放棄當前格式並強制使用本機sql日期時間 –