1
starttime | endtime | id
10:30 11:30 1
11:30 12:30 2
14:30 16:30 3
15:30 16:30 4
如果我要選擇10:30的ID對12:30我用下面這個命令
select id
from table
where STR_TO_DATE(starttime,'%H:%i')>='10:30' and
STR_TO_DATE(endtime,'%H:%i')<='12:30';
這給了我只有身份證1,但不給我2,如果我改變12:30到12:40它給了我1 & 2.BUt我使用較少或相等,所以它應該給我這兩個ID的權利?爲什麼它不這樣工作?
還有一個問題,假設有上表中的條目涵蓋2小時喜歡11:30至13:30在這種情況下,當我嘗試運行查詢與 STR_TO_DATE(開始時間,'%H:% i')> = STR_TO_DATE('12:30','%H:%i')AND STR_TO_DATE(endtime,'%H:%i')<= STR_TO_DATE('13:30','%H:%一世'); 它給出空集:( –
@RajaDhasan仔細看看你的數據;沒有記錄開始時間是> = 12:30',結束時間是<= 13:30'。 –
否否我的評論如上例如,我有一個條目id = 5 starttime = 11:30和endtime = 13:30(假設其他條目已被刪除) 現在,當我檢查10:30到12點之間的時間範圍: 30它應該返回上面的條目,但它不能這樣做 –