Oracle数据库Date类型查询问题(
生活随笔
收集整理的這篇文章主要介紹了
Oracle数据库Date类型查询问题(
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
淺談Oracle數(shù)據(jù)庫(kù)Date類型查詢問題
用過Oracle數(shù)據(jù)庫(kù)的朋友應(yīng)該知道,Oracle數(shù)據(jù)庫(kù)在以Date類型為查詢條件時(shí)存在一個(gè)小小的BUG,如:
select * from tableName where createDate >= to_date('2007-01-01','yyyy-mm-dd') and createDate <= to_date('2007-01-01','yyyy-mm-dd');
tableName 是指:表名
createDate 是表tableName的一個(gè)列名,為Date類型
如果我們希望通過上面的語(yǔ)句來查詢createDate為2007-01-01當(dāng)天的記錄的話,很遺憾,不管那天有沒有數(shù)據(jù)產(chǎn)生,我們得到的結(jié)果都為空,也就是說Oracle數(shù)據(jù)庫(kù)在查詢時(shí)間段內(nèi)的記錄時(shí),記錄中不包括截止日期當(dāng)天所產(chǎn)生的數(shù)據(jù),但是很明顯我們需要得到包括截止日期當(dāng)天所產(chǎn)生的數(shù)據(jù),只要稍作處理即可:
用過Oracle數(shù)據(jù)庫(kù)的朋友應(yīng)該知道,Oracle數(shù)據(jù)庫(kù)在以Date類型為查詢條件時(shí)存在一個(gè)小小的BUG,如:
select * from tableName where createDate >= to_date('2007-01-01','yyyy-mm-dd') and createDate <= to_date('2007-01-01','yyyy-mm-dd');
tableName 是指:表名
createDate 是表tableName的一個(gè)列名,為Date類型
如果我們希望通過上面的語(yǔ)句來查詢createDate為2007-01-01當(dāng)天的記錄的話,很遺憾,不管那天有沒有數(shù)據(jù)產(chǎn)生,我們得到的結(jié)果都為空,也就是說Oracle數(shù)據(jù)庫(kù)在查詢時(shí)間段內(nèi)的記錄時(shí),記錄中不包括截止日期當(dāng)天所產(chǎn)生的數(shù)據(jù),但是很明顯我們需要得到包括截止日期當(dāng)天所產(chǎn)生的數(shù)據(jù),只要稍作處理即可:
select * from tableName where createDate >= to_date('2007-01-01','yyyy-mm-dd') and createDate <= (to_date('2007-01-01','yyyy-mm-dd')+1);
SELECT A.WORKERID,A.WORKERNUM,A.WORKERNAME,A.WLATITUDE,A.WLONGITUDE,A.WORKSTATUS,A.WNOTE,A.WUPDATE FROM TBWORKER A WHERE 1=1 AND A.WUPDATE >= TO_DATE('2013-07-01 0:24:13','YYYY-MM-DD HH24:mi:ss') ORDER BY A.WUPDATE DESC;
總結(jié)
以上是生活随笔為你收集整理的Oracle数据库Date类型查询问题(的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 寒夜客来茶当酒(在寒夜里读首古诗词)
- 下一篇: linux cmake编译源码,linu