2016-04-25 171 views
2

裏面我的MySQL數據庫我有記錄是這樣的:從日期(字符串格式)選擇

----------------------------------- 
id | datePost 
----------------------------------- 
1  |  24/01/2015,13/02/2016,29/12/2016 

和寬度我詢問我有這個日期28/01/2016

我要搜索查詢是否日期是在datePost之間(如果28/02/206在datePost值之間)

我想我已經爆炸了datePost然後foreach結果數組做比較?問題是我在表格內有很多記錄,它可能會導致搜索速度變慢。

您認爲如何?什麼是最好的方法?

+0

如何'24/01/2015,13/02/2016,29/12/2016'來?它是從查詢?如果是,那麼添加你的查詢。 –

+2

您需要將數據庫標準化 –

+2

修復數據結構。您需要一個每個帖子有一行的表格,並且日期可以在該行上。 –

回答

0

而不是foreach荷蘭國際集團查詢,這將是很慢,請嘗試使用使用我沒有測試此通配符

$date = "28/01/2016" 
$qry_dates = mysql_query("SELECT * FROM dates_table WHERE datePost LIKE '%$date%'"); 

select語句,但也許會比使用PHP來查詢更快商場。

編輯你沒有提到關於PHP什麼,所以完整的SQL SELECT會是這樣:

SELECT * FROM date_table WHERE datePost LIKE '%28/01/2016%' 
+0

再次感謝所有, 有關我的問題的更多信息,數據庫是wordpress,所以日期存儲在postmeta表內。 @ntgCleaner我必須搜索日期 – user44321

+0

@ user44321,啊,你必須搜索日期範圍?沒有格式化你的表格,我不明白這是可能的(以一種快速的方式)。你是否使用wordpress插件將日期添加到數據庫? – ntgCleaner