1、取出extract函數(shù)選定日期的年部分,然后-1,在連接上月就行了
創(chuàng)新互聯(lián)專注于岢嵐企業(yè)網(wǎng)站建設(shè),自適應網(wǎng)站建設(shè),商城建設(shè)。岢嵐網(wǎng)站建設(shè)公司,為岢嵐等地區(qū)提供建站服務。全流程按需求定制制作,專業(yè)設(shè)計,全程項目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務
1) 取出系統(tǒng)日期的年部分: extract(year from sysdate)
2) 將取出的年部分轉(zhuǎn)換成數(shù)字類型,然后減1就是上一年了
to_number(extract(year from sysdate))-1
3)取出系統(tǒng)日期的月份不:extract(month from sysdate)
4)與之前的上一年份相連即可
select (to_number(extract(year from sysdate))-1) || '' || extract(month from sysdate) from dual;
2、使用to_char實現(xiàn)
1)將日期類型轉(zhuǎn)換為字符類型,并取出年部分to_CHAR(sysdate,'yyyy')
2)將取出的年部分轉(zhuǎn)換成數(shù)字類型,然后減1就是上一年了
to_number( to_CHAR(sysdate,'yyyy'))-1
3)將日期類型轉(zhuǎn)換為字符類型,并取出月部分to_CHAR(sysdate,'MM')
4)與之前的年部分相連即可
select (to_number( to_CHAR(sysdate,'yyyy'))-1) || '-' || to_CHAR(sysdate,'MM') FROM DUAL;
1、創(chuàng)建測試表,
create table test_sysdate(v_date date);
2、插入測試數(shù)據(jù)
insert into test_sysdate values(sysdate);
insert into test_sysdate values(sysdate-1);
insert into test_sysdate values(sysdate-1.1);
insert into test_sysdate values(sysdate-1.2);
insert into test_sysdate values(sysdate-2);
insert into test_sysdate values(sysdate-3);
3、查詢表中所有記錄數(shù),select t.*, rowid from test_sysdate t,
4、編寫sql,查詢?nèi)掌跒榍耙惶斓挠涗?,select t.*, rowid from test_sysdate t where to_char(v_date,'yyyymmdd') = to_char(sysdate-1,'yyyymmdd')
select getdate()-1
日期減1
如果是月的話:
select month(getdate())-1
年
select year(getdate())-1
設(shè)需要找昨天的數(shù)據(jù),表名為 a ,日期字段為 rq
select * from a where trunc(sysdate-1)=trunc(rq)
trunc 可以拿到時間的日期部分
具體你根據(jù)你的情況完善一下。
分享文章:oracle怎么減日期 oracle日期相減
URL標題:http://muchs.cn/article6/hjsiog.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標簽優(yōu)化、ChatGPT、品牌網(wǎng)站制作、企業(yè)建站、搜索引擎優(yōu)化、關(guān)鍵詞優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)