oracle 日期處理

2021-08-30 01:41:22 字數 3249 閱讀 4588

當月資料

sql**

select*from

tablet    

wheret.create_time >=trunc(sysdate,  'mm'

)    

and  t.create_time<=last_day(sysdate)  

select * from table t 

where t.create_time >=trunc(sysdate, 'mm')

and t.create_time<=last_day(sysdate)

當年資料

sql**

select*from

tablet   

wheret.create_time >=trunc(sysdate, 'yyyy'

)    

and  t.create_time<=add_months(trunc(sysdate, 'yyyy'

),12)-1  

select * from table t

where t.create_time >=trunc(sysdate,'yyyy')

and t.create_time<=add_months(trunc(sysdate,'yyyy'),12)-1

本週(國外週日為乙個星期第一天)

sql**

wheret.create_time >=trunc(sysdate, 'day'

)+1  and

t.create_time<=trunc(sysdate, 'day'

)+6   

where t.create_time >=trunc(sysdate,'day')+1 and t.create_time<=trunc(sysdate,'day')+6
本週(國內周一為乙個星期第一天)

sql**

wheret.create_time >=trunc(next_day(sysdate-8,1)+1)  and

t.create_time<=trunc(next_day(sysdate-8,1)+7)+1  

oracle 取當月最後一天的sql語句:

select last_day(sysdate) from dual;

其他方式:取得當月資料

select t.*

from tbl_order_history_info t

where t.store_id = '1e5dace9-8772-4897-a63a-429b74155958' and

t.trade_time between trunc(sysdate, 'month') and last_day(sysdate)

add_months:在當前日期的基礎上加/減月份,返回加/減後的日期。

>

select

add_months(sysdate, -3

) three_months_ago 

from

dual;

加法 select sysdate,add_months(sysdate,12) from dual;         --加1年

select sysdate,add_months(sysdate,1) from dual;         --加1月

select sysdate,to_char(sysdate+7,'yyyy-mm-dd hh24:mi:ss') from dual;    --加1星期

select sysdate,to_char(sysdate+1,'yyyy-mm-dd hh24:mi:ss') from dual;    --加1天

select sysdate,to_char(sysdate+1/24,'yyyy-mm-dd hh24:mi:ss') from dual;   --加1小時

select sysdate,to_char(sysdate+1/24/60,'yyyy-mm-dd hh24:mi:ss') from dual;   --加1分鐘

select sysdate,to_char(sysdate+1/24/60/60,'yyyy-mm-dd hh24:mi:ss') from dual; --加1秒

減法select sysdate,add_months(sysdate,-12) from dual;         --減1年

select sysdate,add_months(sysdate,-1) from dual;         --減1月

select sysdate,to_char(sysdate-7,'yyyy-mm-dd hh24:mi:ss') from dual;    --減1星期

select sysdate,to_char(sysdate-1,'yyyy-mm-dd hh24:mi:ss') from dual;    --減1天

select sysdate,to_char(sysdate-1/24,'yyyy-mm-dd hh24:mi:ss') from dual;   --減1小時

select sysdate,to_char(sysdate-1/24/60,'yyyy-mm-dd hh24:mi:ss') from dual;   --減1分鐘

select sysdate,to_char(sysdate-1/24/60/60,'yyyy-mm-dd hh24:mi:ss') from dual; --減1秒

oracle查詢當天資料  應該設定為當天23:59:59

"from orderhistoryinfo t where t.storeid=" + "'"

+ storeid + "'"

+ " and t.tradetime between to_date(" + "'"

+ starttime + "'"

+ ",'yyyy-mm-dd') and to_date(" + "'" + endtime

+ " 23:59:59'" + ",'yyyy-mm-dd hh24:mi:ss ')"   //格式必須為這樣.因為plsql的原因無法識別大小寫

Oracle中日期處理

獲取oracle詳細建表語句 select dbms metadata.get ddl table t test ddl from dual 查詢資料儲存結構,字元長度 select dump 漢字 lengthb 漢字 from dual trunc把乙個日期擷取,只取到年。資料庫只是把最後5個位...

ORACLE 日期加減處理

語法 numtoyminterval n char expr char expr 日期描述,可以是year和month 作用 可以將數字轉換成相應的日期單位時間 比如 numtoyminterval 1,month 表示乙個月 numtoyminterval 1,year 表示一年 月份加減 sel...

ORACLE 日期時間處理函式

to char 是把日期或數字轉換為字串 to date 是把字串轉換為資料庫中得日期型別轉換函式 to number 將字元轉化為數字 to char 使用to char函式處理數字 to char number,格式 to char salary,99,999.99 使用to char函式處理日...