oracle中的date類型字段,截取年份可用to_char函數(shù)。
長海網(wǎng)站建設公司成都創(chuàng)新互聯(lián)公司,長海網(wǎng)站設計制作,有大型網(wǎng)站制作公司豐富經驗。已為長海近千家提供企業(yè)網(wǎng)站建設服務。企業(yè)網(wǎng)站搭建\成都外貿網(wǎng)站制作要多少錢,請找那個售后服務好的長海做網(wǎng)站的公司定做!
工具:oracle 10g
步驟:
1、如emp表中有hiredate字段為date類型的數(shù)據(jù)。
2、截取其中的年份部分,用如下語句:
select?empno,ename,job,mgr,to_char(hiredate,'yyyy'),sal,comm,deptno?from?emp;
3、運行后結果,可以看出年份已將截取出來了:
select to_char(a,'yyyymm') year from table_name;
把A表A字段轉換成字符型,取年月字段
在Oracle中,要獲得日期中的年份,例如把sysdate中的年份取出來,并不是一件難事。常用的方法是:Select to_number(to_char(sysdate,'yyyy')) from dual,而實際上,oracle本身有更好的方法,那就是使用Extract函數(shù),使用方法是:Select Extract(year from sysdate) from dual,這種方法省掉了類型轉換,看上去更加簡潔。相應的,要取得月份或日,可以用select extract (month from sysdate) from dual和select extract (day from sysdate) from dual。 此方法獲得的結果,是數(shù)值型的,你可以設置一個方法測試一下。
1、創(chuàng)建測試表,create table test_date(v_date date);
2、插入測試數(shù)據(jù),
insert into test_date
select sysdate - level * 10 from dual connect by level 100
3、查詢表中所有記錄,select * from test_date,可以看到時間格式為年月日時分秒,
4、編寫sql,將時間截取到年月,
select t.*,
?to_char(v_date, 'yyyymm') v_date_mon1,
?trunc(v_date, 'mm') v_date_mon2
from TEST_DATE t
比入字段date 你可以to_char(date,'yyyy')查詢出來的就是年份 信息
select to_char(date,'yyyy')
from biao