关于日期的sql,做报表的时候可能有用!!!
发表于:2007-07-02来源:作者:点击数:
标签:
--得到年月,日,季度 select to_char(日期,@#yyyymmdd@#) DATE_ID,to_char(日期,@#yyyy@#)||@#年@#||to_char(日期,@#mm@#)||@#月@#||to_char(日期,@#dd@#)||@#日@# DATE_NAME, to_char(日期,@#yyyymm@#) MONTH_ID,to_char(日期,@#yyyy@#)||@#年@#||to_char(
--得到年月,日,季度
select
to_char(日期,@#yyyymmdd@#) DATE_ID,to_char(日期,@#yyyy@#)||@#年@#||to_char(日期,@#mm@#)||@#月@#||to_char(日期,@#dd@#)||@#日@# DATE_NAME,
to_char(日期,@#yyyymm@#) MONTH_ID,to_char(日期,@#yyyy@#)||@#年@#||to_char(日期,@#mm@#)||@#月@# MONTH_NAME,
@#Q@#||to_char(日期,@#q.yyyy@#) QUARTERID,to_char(日期,@#yyyy@#)||@#年第@#||to_char(日期,@#q@#)||@#季度@# QUARTERID_NAME,
to_char(日期,@#yyyy@#) YEAR_ID,to_char(日期,@#yyyy@#)||@#年@# YEAR_NAME
from(
select to_date(@#2000-01-01@#,@#yyyy-mm-dd@#)+(rownum-1) 日期 from user_objects where rownum<367 and to_date(@#2000-01-01@#,@#yyyy-mm-dd@#)+(rownum-1)<to_date(@#2001-01-01@#,@#yyyy-mm-dd@#)
);
--得到季度和月份对应关系
select distinct to_char(日期,@#q@#) 季度,to_char(to_date(@#2001-01-01@#,@#yyyy-mm-dd@#)+(rownum-1),@#yyyymm@#) 日期 from(
select to_date(@#2001-01@#,@#yyyy-mm@#)+(rownum-1) 日期 from user_objects where rownum<367 and to_date(@#2001-01-01@#,@#yyyy-mm-dd@#)+(rownum-1)<to_date(@#2002-01-01@#,@#yyyy-mm-dd@#)
);
--得到一年中的天数
select to_char(to_date(@#2000-01-01@#,@#yyyy-mm-dd@#)+(rownum-1),@#yyyy-mm-dd@#) 日期 from user_objects where rownum<367 and to_date(@#2000-01-01@#,@#yyyy-mm-dd@#)+(rownum-1)<to_date(@#2001-01-01@#,@#yyyy-mm-dd@#);
原文转自:http://www.ltesting.net