我有一個場景,我希望能夠從MySQL表中選擇行,但排除當前時間在一定時間範圍內的行。更正查詢優化時間範圍的MySQL結構?
示例: 一行的「安靜」期限爲晚上10點至上午8點30分。 如果當前服務器時間晚上10點或上午8點30分之前,我的SQL SELECT語句不應返回該行。
示例2:「安靜期」爲空並被忽略。
示例3:從上午9:53到上午9:55創建了一個安靜的時間段。如果當前服務器時間在2分鐘的窗口中,則該行不會被SELECT返回。
我的問題: 你會在數據庫中使用什麼數據格式,以及如何編寫查詢?
我想過幾種不同的方法(將start_time定義爲一列和另一個持續時間,以秒爲單位定義......或使用日期戳......或其他)。沒有一個看起來很理想,需要大量的計算。
謝謝!
你只需要每行的時間或者你還需要日期嗎? – liquorvicar 2012-03-30 06:07:02
我不需要返回。我只是試圖根據一天的時間進行過濾。我不在乎約會。與上面的示例一樣:我想排除當前服務器時間在指定的「安靜窗口」內的行。 – 2012-03-30 16:43:55