Oracle日期範圍查詢交叉查詢方法
阿新 • • 發佈:2019-02-15
在日常開發中,有時候會需要查詢某個日期範圍內,但是通過資料庫查詢時開始時間需要資料庫有的才能查詢到,若是在jsp介面輸入的時間大於或小於資料庫的日期是查詢不出資料的;那麼此時我們可以用交叉查詢的方式,下面是我對這個的理解,若是有問題,望各位大神提出來,不勝感激!
在oracle中,有時需要用到查詢日期範圍:
UI中查詢開始時間與結束時間,但是資料庫中開始時間如果與UI中的開始時間不相同是查詢不出資料的;如:begin_time >= TO_DATE('2016-02-31', 'yyyy-mm-dd') and end_time <= TO_DATE('2016-05-01','yyyy-mm-dd'); 所以需要取UI的開始\結束時間與資料庫的開始\結束時間的交集 如:begin_time <= TO_DATE('2016-05-31', 'yyyy-mm-dd') AND end_time >= TO_DATE('2016-03-1', 'yyyy-mm-dd'); 上面的意思是:資料庫的開始時間<=UI的結束時間,資料庫的結束時間>=UI的開始時間; 圖解:UI程式碼jsp介面上輸入的
以上的圖就是取日期範圍的交集;