(所有的語句都是select ..加上下面的條件句子..from dual)
DAY_KEY NUMBER(10) NOT NULL , -時間格式爲20141105
to_number(to_char(sysdate,'YYYYMMDD'))
CALENDAR_DAY DATE NULL ,-時間格式爲2014/11/05
to_date(to_char(sysdate,'YYYY/MM/DD'),'YYYY/MM/DD')
HY_NUM NUMBER(2) NULL , -1月-6月爲1, 7月-12月爲2
to_number(trunc(to_number(to_char(sysdate,'MM'))/7,0)+1)
QTR_NUM NUMBER(2) NULL , --季度,1月-3月爲1,4月-6月爲2, 7月-9月爲3,10月-12月爲4
to_number(to_char(sysdate,'Q'))
WK_OF_YEAR NUMBER(2) NULL , -2014/11/05所在周是這年的第幾周,值爲1-52
to_number(to_char(sysdate,'ww'))
CAL_YEAR NUMBER(4) NULL , -2014
to_number(to_char(sysdate,'YYYY'))
DAY_NAME VARCHAR2(30) NULL ,星期幾的簡寫
to_char(sysdate,'DY')
DAY_OF_MON NUMBER(2) NULL ,--2014/11/05是該月第幾天,1~28/29/30/31
to_number(to_char(sysdate,'DD'))
DAY_OF_WK NUMBER(2) NULL ,-- 2014/11/05是該周第幾天,1~7
to_number(to_char(sysdate,'D'))
DAY_OF_YEAR NUMBER(3)NULL , --2014/11/05是該年第幾天,1~365
to_number(to_char(sysdate,'DDD'))
MON_NAME VARCHAR2(30) NULL , --2014/11/05所在月份的名稱,January ~ December
to_char(sysdate,'MONTH')
HY_NAME VARCHAR2(30) NULL , --2014/11/05所在半年的名稱,HY1,HY2
'HY'||( trunc(to_number(to_char(sysdate,'MM'))/7,0)+1)
YEAR_MON_NAME VARCHAR2(30) NULL , --‘201411’
to_char(sysdate,'YYYYMM')
QTR_NAME VARCHAR2(30) NULL , --2014/11/05所在季度的名稱,Q1,Q2,Q3,Q4
'Q'||to_char(sysdate,'Q')
WK_NAME_OF_YEAR VARCHAR2(30) NULL , --2014/11/05所在這年的周的名稱,WK1 ~ WK52
'WK'||to_char(sysdate,'ww')
NAME_OF_YEAR VARCHAR2(30) NULL, --2014/11/05所在年的名稱,‘2014’
to_char(sysdate,'YYYY')
IS_FIRST_DAY_OF_WK VARCHAR2(1) NULL ,--2014/11/05是否爲所在周的第一天,若是則爲1,否則爲0
case when to_char(sysdate,'D')='1' then '1' else '0' end
IS_LAST_DAY_OF_WK VARCHAR2(1) NULL ,--2014/11/05是否爲所在周的最後一天,若是則爲1,否則爲0
case when to_char(sysdate,'D')='7' then '1' else '0' end
IS_FIRST_DAY_OF_MON VARCHAR2(1) NULL ,--2014/11/05是否爲所在月的第一天,若是則爲1,否則爲0
Case when to_char(trunc(sysdate,'MONTH'),'YYYY/MM/DD')=to_char(sysdate,' YYYY/MM/DD') then'1' else '0' end
IS_LAST_DAY_OF_MON VARCHAR2(1) NULL , --2014/11/05是否爲所在月的最後一天,若是則爲1,否則爲0
case when to_char(last_day(sysdate),'YYYY/MM/DD')=to_char(sysdate,'YYYY/MM/DD ')then'1' else '0' end
IS_FIRST_DAY_OF_QTR VARCHAR2(1) NULL ,--2014/11/05是否爲所在季度的第一天,若是則爲1,否則爲0
case when to_char(trunc(sysdate,'Q'),'YYYY/MM/DD')=to_char(sysdate,'YYYY/MM/DD')then'1' else '0' end
IS_LAST_DAY_OF_QTR VARCHAR2(1) NULL ,--2014/11/05是否爲所在季度的最後一天,若是則爲1,否則爲0
case when to_char(add_months(trunc(sysdate,'Q'),3)-1,'YYYY/MM/DD')=to_char(sysdate,'YYYY/MM/DD')then'1' else '0' end
IS_FIRST_DAY_OF_YEAR VARCHAR2(1) NULL , --2014/11/05是否爲所在年的第一天,若是則爲1,否則爲0
case when to_char(trunc(sysdate,'YEAR'),'YYYY/MM/DD')=to_char(sysdate,'YYYY/MM/DD')then'1' else '0' end
IS_LAST_DAY_OF_YEAR VARCHAR2(1) NULL ,--2014/11/05是否爲所在年的最後一天,若是則爲1,否則爲0
case when to_char(add_months(trunc(sysdate,'YEAR'),12)-1,'YYYY/MM/DD')=to_char(sysdate,'YYYY/MM/DD')then'1' else '0' end
CREATE_DT DATE NULL , --系統時間
sysdate
WK_OF_MON NUMBER(2) NULL , --2014/11/05所在月份第幾周,每月從第一天開始重新計數,如每月的第一天爲第一週,以此類推
to_number(to_char(sysdate,'iw'))-to_number(to_char(trunc(sysdate,'MM'),'iw'))+1
MON_NUM NUMBER(2) NULL , --2014/11/05所在月份, 1 ~ 12
to_number(to_char(sysdate,'MM'))
MON_ABBR VARCHAR2(30) NULL , --2014/11/05所在月份簡稱,Jan, Feb….Dec.
to_char(sysdate,'MON')
CAL_DAY_DT NUMBER(8) NULL , --2014/11/05的數字表示,20141105
to_number(to_char(sysdate,'YYYYMMDD'))
TTL_MON_DAYS NUMBER(2) NULL , --2014/11/05所在月份總共有多少天,28,29,30,31
to_number(to_char(add_months(trunc(sysdate,'MONTH'),1)-1,'DD'))
TTL_YEAR_DAYS NUMBER(3) NULL , --2014/11/05所在年總共有多少天,365,366
to_number(to_char(add_months(trunc(sysdate,'YEAR'),12)-1,'DDD'))
IS_WK_END NUMBER(1) NULL , --2014/11/05是否爲週末,如果是星期六,日,則爲1,否則爲0
case when to_char(sysdate,'DY')='SAT' or to_char(sysdate,'DY')='SUN' then 1 else 0 end
IS_WORKING_DAY NUMBER(1) NULL , --2014/11/05是否爲工作日,如果是星期六,日,則爲0,否則爲1
case when to_char(sysdate,'DY')='SAT' or to_char(sysdate,'DY')='SUN' then 0 else 1 end
CAL_YEAR_MON NUMBER(6) NULL , --2014/11/05所在月份的數字表示,201411
to_number(to_char(sysdate,'YYYYMM'))
MON_START_DT DATE NULL , --2014/11/05所在月份的第一天,2014/11/01
trunc(sysdate,'MONTH')
MON_END_DT DATENULL , --2014/11/05所在月份的最後一天,2014/11/30
last_day(to_date(to_char(sysdate,'YYYY/MM/DD'),'YYYY/MM/DD'))
QTR_START_DT DATE NULL , --2014/11/05所在季度的第一天,2014/10/01,
trunc(sysdate,'Q')
QTR_END_DT DATENULL , --2014/11/05所在季度的最後一天,2014/10/31
add_months(trunc(sysdate,'Q'),3)-1
YEAR_START_DT DATE NULL , --2014/11/05所在年的第一天,2014/1/01
trunc(sysdate,'YEAR')
YEAR_END_DT DATE NULL , --2014/11/05所在年的最後一天,2014/12/31
add_months(trunc(sysdate,'YEAR'),12)-1
WK_START_DT DATE NULL , --2014/11/05所在周的第一天,2014/11/03
trunc(sysdate,'DY')
WK_END_DT DATE NULL --2014/11/05所在周的最後一天,2014/11/09
trunc(sysdate,'DY')+6