Re: [SQL ] mysql二個時段日期的的判斷?

看板Database作者 (Arrack Tseng)時間16年前 (2009/07/21 08:36), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串4/4 (看更多)
※ 引述《lbsjack (^^)》之銘言: : 我剛測試了一下,已預約時段為08:00~10:00 : select * from events where : (publish_up >= '2009-07-24 6:00:00' and publish_up <= '2009-07-24 7:00:00') or : (publish_down >= '2009-07-24 6:00:00' and publish_down <= '2009-07-24 : 7:00:00') : ↑輸入06:00~07:00 找不到 ,所以可以新增(正確) : select * from events where : (publish_up >= '2009-07-24 9:00:00' and publish_up <= '2009-07-24 9:10:00') or : (publish_down >= '2009-07-24 9:00:00' and publish_down <= '2009-07-24 : 9:10:00') : ↑輸入09:00~09:10,找不到,所以可以新增(錯誤,因為08~10都被預約了) : select * from events where : (publish_up >= '2009-07-24 10:00:00' and publish_up <= '2009-07-24 10:00:00') ^^? : or : (publish_down >= '2009-07-24 10:00:00' and publish_down <= '2009-07-24 : 12:00:00') : ↑褕入10:00~12:00,找的到,不能新增(錯誤,因為10點視為在10~12,可以新增) : 以上這樣子,不知道sql要如何修正,麻煩站上各位,謝謝。 看標題以為是SQL SERVER,我要表達的是>跟< 沒注意到是mysql,真是誤會 根據你提的例子,在追加一個條件 select * from events where ( (publish_up< 't1' and publish_down > 't2') or (publish_up< 't1' and publish_down > 't2') )or( (publish_up> 't1' and publish_up < 't2') or (publish_down> 't1' and publish_down < 't2') ) 這裡考慮到兩個條件, 一個是錯誤的時段在預約的時段內,例如 例如錯誤是9~9:10,預約是8~10 一個是預約的時段在錯誤的時段內 例如錯誤是6~12,預約是10~12 因為手中沒類似的資料庫,你在試試看吧 剩下如有不足的部分你該自己思考了吧..? ※ 編輯: arrack 來自: 61.56.213.47 (07/21 08:51) ※ 編輯: arrack 來自: 61.56.213.47 (07/21 08:51) ※ 編輯: arrack 來自: 61.56.213.47 (07/21 08:52)

07/21 22:29, , 1F
謝謝arrack的教學,非常感謝。
07/21 22:29, 1F
文章代碼(AID): #1APGsKwz (Database)
文章代碼(AID): #1APGsKwz (Database)