真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Oracle日期和時間的存儲于處理-創(chuàng)新互聯(lián)

本章內(nèi)容包括:

創(chuàng)新互聯(lián)是一家專注于網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計與策劃設(shè)計,華陰網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10余年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:華陰等地區(qū)。華陰做網(wǎng)站價格咨詢:028-86922220
  • 處理并存儲一個特定的日期和時間。DATE類型可以存儲世紀、4位年份、月、日、時、分和秒

  • 使用時間戳timestamp,時間戳可以存儲一個特定的日期和時間。時間戳的優(yōu)點是可以存儲帶有小數(shù)位的秒,還可以存儲時區(qū)

  • 使用時間間隔interval,時間間隔可以存儲時間的長度。如1年零3個月等。

在Oracle數(shù)據(jù)庫中,默認情況下,日期以DD-MON-YYYY格式保存到數(shù)據(jù)庫中,其中:

  • DD是一個兩位的天數(shù)

  • MON是月份中的前三個字母,如FEB

  • YYYY是一個4位的年份。

默認情況下數(shù)據(jù)庫以DD-MON-YY格式返回日期,其中YY是年份的最后兩位。

1、使用TO_DATE()和TO_CHAR()轉(zhuǎn)換時間值。

    TO_CHAR(x[,format])用于將時間值x轉(zhuǎn)化為字符串,該函數(shù)提供一個可選參數(shù)format來說明x的格式。

SQL> select sysdate from dual; SYSDATE ----------- 2016/6/9 12 SQL> select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual; TO_CHAR(SYSDATE,'YYYY-MM-DDHH2 ------------------------------ 2016-06-09 12:32:28 SQL> select to_char(sysdate) from dual; TO_CHAR(SYSDATE) ---------------- 09-6月 -16

    TO_DATE(x[,format])用于將字符串x轉(zhuǎn)化為時間值,該函數(shù)可以指定一個可選字符串format參數(shù)來說明x的格式。如果沒有指定format參數(shù),日期就是用默認的數(shù)據(jù)庫格式。x的格式要與format指定的格式一樣。

SQL> select to_char(to_date('05-6月-2016 12:38:23','DD-MON-YYYY HH24:MI:SS'),'HH24:MI:SS') as time   2  from dual; TIME -------- 12:38:23

    設(shè)置默認的日期格式。默認的日期格式是在數(shù)據(jù)庫參數(shù)NLS_DATE_FORMAT中指定的。可以用下面的語句來修改。

SQL> alter session set nls_date_format = 'YYYY-MM-DD'; Session altered

 2、使用時間值函數(shù)

    時間值函數(shù)用于獲取或處理時間值和時間戳。

函數(shù)
說明
ADD_MONTHS(x,y)
返回x加上y個月后的結(jié)果,如果y是負數(shù),就從x中減去y個月
LAST_DAY(x)
返回包含x的月的最后一天
MONTHS_BETWEEN(x,y)
返回x和y之間有幾個月。如果x>y返回正數(shù),否則返回負數(shù)。
NEXT_DAY(x,day)
返回從x開始,到下個day的時間值;day是一個文本字符串
ROUND(x[,unit])
對x取整。

SYSDATE

返回數(shù)據(jù)庫服務(wù)器所在的操作系統(tǒng)中設(shè)置的當(dāng)前時間值
TRUNC(x[,unit])
對x進行截斷。默認情況下,x被截斷為當(dāng)天的開始時間。
SQL> select sysdate from dual; SYSDATE ----------- 2016/6/9 12 SQL> select add_months(sysdate,1) from dual; ADD_MONTHS(SYSDATE,1) --------------------- 2016/7/9 12:52:03 SQL> select add_months(sysdate,-1) from dual; ADD_MONTHS(SYSDATE,-1) ---------------------- 2016/5/9 12:52:15 SQL> select last_day(to_char(sysdate)) from dual; LAST_DAY(TO_CHAR(SYSDATE)) -------------------------- 2016/6/30 SQL> select months_between('09-06月-2016','08-10月-2016') from dual; select months_between('09-06月-2016','08-10月-2016') from dual ORA-01861: 文字與格式字符串不匹配 SQL> select months_between('2016-06-09','2016-10-08') from dual; MONTHS_BETWEEN('2016-06-09','2 ------------------------------              -3.96774193548387 SQL> select months_between('2016-10-09','2016-06-09') from dual; MONTHS_BETWEEN('2016-10-09','2 ------------------------------                              4

3、使用時間戳

    CURRENT_TIMESTAMP、LOCALTIMESTAMP、SYSTIMESTAMP返回當(dāng)前回話的日期和時間以及時區(qū)

    EXTRACT 從時間戳類型或者DATE類型中提取并返回年月日時分秒或時期

    TO_TIMESTAMP(x[,format])用于將字符串x轉(zhuǎn)化為一個TIMESTAMP類型,format指定轉(zhuǎn)化類型

4、使用時間間隔INTERVAL

    舉例:優(yōu)惠券有效期,打折促銷的時間

類型
說明
INTERVAL_YEAR[(years_option)] TO_MONTH
存儲一個時間間隔,其單位是年和月;可以通過years_option參數(shù)來指定年的精確度,默認精度是2,意思是可以在時間間隔中為年數(shù)存儲兩位數(shù)字。如果試圖向表中添加年數(shù)超過INTERVAL_YEAR TO MONTH列可以存儲的記錄,就會返回一個錯誤。時間間隔既可以存儲正數(shù),也可以存儲負數(shù)
INTERVAL_DAY[(days_option)] TO_SECOND[(seconds_precision)]
存儲一個時間間隔,其單位是天和秒;可以動過指定可選的days_precision參數(shù)來指定天的精度,該參數(shù)是一個0~9的整數(shù)。默認值是2。

    使用INTERVAL_YEAR TO MONTH類型

        創(chuàng)建表coupons用來存儲優(yōu)惠券信息。duration用來記錄優(yōu)惠券有效的時間間隔。

SQL> create table coupons(   2  coupon_id integer constraint coups_pk primary key,   3  name varchar2(30) not null,   4  duration INTERVAL YEAR(3) TO MONTH   5  ); Table created

    要想數(shù)據(jù)庫提供一個INTERVAL YEAR TO MONTH字面值,可以使用以下語法:

INTERVAL '[+|-][y][-m]' [YEAR[(years_precisiion)]] [TO_MONTH]

    示例:

時間間隔字面量
說明
INTERVAL '1' YEAR

INTERVAL '11' MONTH
時間間隔11個月(14>12 == 1年零2個月)
INTERVAL '1-3' YEAR TO MONTH
時間間隔為1年零3個月
INTERVAL '0-5' YEAR TO MONTH
時間間隔為0年5個月
INTERVAL '-1-5' YEAR TO MONTH
時間間隔為負數(shù),值為1年零5個月


SQL> INSERT INTO coupons(coupon_id,name,duration)   2  values(1,'$1 off Z Files',INTERVAL '1' YEAR); 1 row inserted SQL> INSERT INTO coupons(coupon_id,name,duration)   2  values(2,'$2 off Pop 3',INTERVAL '11' MONTH); 1 row inserted SQL> INSERT INTO coupons(coupon_id,name,duration) values(3,'$2 off Pop 31',INTERVAL '2' MONTH); 1 row inserted SQL> select * from coupons;                               COUPON_ID NAME                           DURATION --------------------------------------- ------------------------------ -------------------------------------------------------------------------------                                       1 $1 off Z Files                 +001-00                                       2 $2 off Pop 3                   +000-11                                       3 $2 off Pop 31                  +000-02

    

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


網(wǎng)頁題目:Oracle日期和時間的存儲于處理-創(chuàng)新互聯(lián)
文章地址:http://weahome.cn/article/dhgsph.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部