爲工作中的投影機制作簡單的預約系統。基於計算時間槽的SQL過濾
這是場景。每臺投影機可在一整天內將其可用性設置爲四分之一小時。即投影機1在每天的上午8:15至下午1:45至下午3:00至5:15之間可用(也可以改變爲每天設置不同的可用性)。只要投影機可用,您可以在一天中的任何時間段預訂投影機。所以我的設置在我的sql數據庫中(使用我的asp.net mvc前端)。
我的問題是什麼是在這種情況下搜索的最佳方式。即用戶A進來說,找到我在這個星期五下午12點至3點之間可用的投影儀。我努力編寫一個高效的SQL查詢,將過濾這個。到目前爲止,我的最佳選擇是退回所有投影機,並以編程方式解決它們是否可用,並且此時間之間沒有預訂。它有效,但效率非常低。我偶然發現了一個使用由存儲過程生成的臨時表的想法,該過程可以被過濾,但並不存在。
有沒有人有任何想法我可以怎麼辦?
在此先感謝
你至少需要顯示數據庫模式。最好是您在查詢時的嘗試。 – 2012-03-14 04:33:55
你能否提供你的表結構? – 2012-03-14 04:34:32