日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle的dtime,Oracle时间函数

發布時間:2023/12/2 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle的dtime,Oracle时间函数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

YYYY年 Q季度

MM月 month月

WW當年第幾周 W本月第幾周

DDD 當年第幾天 DD當月第幾天 D當周內第幾天 DY當周內星期幾 day當周內星期幾

HH或HH12:12進制小時數 HH24:24小時制

MI:分鐘數(0~59) SS:秒數(0~59)

1、Sysdate:當前日期和時間

Select sysdate from dual

2、Last_day():本月最后一天

Select last_day(sysdate) from dual;

3、Add_months(d,n):當前日期d后推n個月

Select add_months(sysdate,2) from dual;

4、Months_between(f,s):日期f和s間相差月數

select months_between(sysdate,to_date('2005-11-12','yyyy-mm-dd'))from dual;

5、NEXT_DAY(d,day_of_week):返回由"day_of_week"命名的,在變量"d"指定的日期之后的第一個

工作日的日期。參數"day_of_week"必須為該星期中的某一天。

返回下個星期的日期,day為1-7或星期日-星期六,1表示星期日

SELECT next_day(to_date('20050620','YYYYMMDD'),1) FROM dual;

--------------------------------

每周的星期五晚上23:00

select trunc(next_day(sysdate,'星期五'))+23/24 from dual;

---------------------------------

6、current_date():返回當前會話時區中的當前日期

select current_date from dual;

7、current_timestamp():以timestamp with time zone數據類型返回當前會話時區中的當前日期

select current_timestamp from dual;

8、dbtimezone():返回時區

select dbtimezone from dual;

9、extract():找出日期或間隔值的字段值

select extract(year from add_months(sysdate,36)) " Years" from dual;

10、localtimestamp()返回會話中的日期和時間

select localtimestamp from dual;

天數增減:

select (sysdate - 3) from dual;

select (sysdate + 3) from dual;

今天晚上23:00:trunc(sysdate)+23/24

TRUNC(SYSDATE)+(1440*60-1)/(1440*60):2015-06-01 23:59:59

TRUNC(SYSDATE)+1-1/86400:2015-06-01 23:59:59

增加一小時:SYSDATE + 1/24

增加10分鐘: 'SYSDATE + 10/(60*24)'

增加30秒: 'SYSDATE + 30/(60*24*60)'

當前時間減去7分鐘的時間

select sysdate,sysdate - interval '7' MINUTE from dual;

當前時間減去7小時的時間

select sysdate - interval '7' hour from dual;

當前時間減去7天的時間

select sysdate - interval '7' day from dual;

當前時間減去7月的時間

select sysdate,sysdate - interval '7' month from dual;

當前時間減去7年的時間

select sysdate,sysdate - interval '7' year from dual;

時間間隔乘以一個數字

select sysdate,sysdate - 8*interval '7' hour from dua

上月末天:

select to_char(add_months(last_day(sysdate),-1),'yyyy-MM-dd') LastDay from dual;

上月今天:

select to_char(add_months(sysdate,-1),'yyyy-MM-dd') PreToday from dual;

上月首天:

select to_char(add_months(last_day(sysdate)+1,-2),'yyyy-MM-dd') firstDay from dual;

判斷上下午

if to_date(to_char(sysdate, 'hh24:mi:ss'), 'hh24:mi:ss') <

to_date('12:00:00', 'hh24:mi:ss') then

v_zblb := '上午';

else

v_zblb := '下午';

end if;

按照每周進行統計:

select to_char(sysdate,'ww') from dual group by to_char(sysdate,'ww');

要找到某月中所有周五的具體日期:

select to_char(t.d,'YY-MM-DD') from ( select trunc(sysdate, 'MM')+rownum-1

as d from dba_objects where rownum < 32) t where to_char(t.d, 'MM') =

to_char(sysdate, 'MM') and trim(to_char(t.d, 'Day'))

處理月份天數不定的辦法

select to_char(add_months(last_day(sysdate) +1, -2), 'yyyymmdd'),last_day(sysdate) from dual;

找出今年的天數

select add_months(trunc(sysdate,'year'), 12) - trunc(sysdate,'year') from dual ;

閏年的處理方法

to_char( last_day( to_date('02' | | :year,'mmyyyy') ), 'dd' )

TO_CHAR把日期或數字轉換為字符串

TO_CHAR(number, '格式')

TO_CHAR(salary, '$99,999.99')

TO_CHAR(date, '格式') to_char(sysdate,'yyyy-mm-dd hh24:mi:ss')

TO_CHAR(sysdate,'YYYY"年"fmMM"月"fmDD"日" HH24:MI:SS')

TO_DATE把字符串轉換為數據庫中的日期類型

TO_DATE(char, '格式')

TO_NUMBER將字符串轉換為數字

TO_NUMBER(char, '格式')

日期時間轉為日期:

to_date(to_char(b.billing_date_time , 'yyyy/mm/dd'), 'yyyy-mm-dd')

to_date('2014-03-12 14:00:00','YYYY-MM-DD HH24:MI:SS')

年齡:

trunc(months_between(sysdate,t.birthday)/12) floor(MONTHS_BETWEEN(sysdate,b.date_of_birth)/12)

標簽:sysdate,函數,char,date,時間,dual,Oracle,day,select

來源: https://www.cnblogs.com/shanzzs/p/10791336.html

總結

以上是生活随笔為你收集整理的oracle的dtime,Oracle时间函数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。