最近專案中的查詢模組中,查詢條件用到了年月日下拉框,預設下拉框中都要填充資料,分別是年、月、日,並且還要實現級聯要求。這就需要根據不同的年填充月份資料,不同的月填充不同的日,填充的資料需要查詢語句完成。通過努力終於實現了想要的結果,如下:
1.年份:
select (1 - level +to_char(sysdate, 'yyyy')) years
from dual
connect by level <=10
2.月份:
select case when mons<10 then '0'||mons else to_char(mons) end monsnew from
(select(1 - level + decode(to_char(sysdate, 'yyyy'),
'?年份', --引數,本年只填充當前月份以前的時間
to_char(sysdate, 'mm'),12)) mons
from dual
connect by level <= decode(to_char(sysdate, 'yyyy'),
'?年份',
to_char(sysdate, 'mm'),
12))
3.日期:
select case when days<10 then '0'||days else to_char(days) end daysnew from
(select (1 - level + decode(to_char(sysdate, 'yyyy'),
'?年份',
decode(to_char(sysdate, 'mm'),
'?月份',
to_number(to_char(sysdate, 'dd')),
to_number(to_char(last_day(to_date('?年份?月份'','yyyymm')),'dd'))),
to_number(to_char(last_day(to_date('?年份?月份'','yyyymm')),'dd')))) days
from dual
connect by level <= decode(to_char(sysdate, 'yyyy'),
'?年份',
decode(to_char(sysdate, 'mm'),'08', to_number(to_char(sysdate, 'dd')),to_number(to_char(last_day(to_date
('?年份?月份','yyyymm')),'dd'))),
to_number(to_char(last_day(to_date('?年份?月份'','yyyymm')),'dd')))
)
感覺這語句還是非常用得著的,如果大家還有其它好的語句,希望能拿出來分享~~~
oracle 根據年月日生成編號
create table test id number 32 primary key,createdatetime date delete from test commit insert into test values 2011120901,sysdate insert into test val...
Oracle 獲取當前年 月 日
oracle 獲取當前年 月 日 1 oracle中extract 函式從oracle 9i中引入,用於從乙個date或者interval型別中擷取到特定的部分 語法如下 extract from selectextract yearfromsysdate fromdual 當前年 selectex...
Oracle 獲取當前年 月 日
size large oracle 獲取當前年 月 日 第一種 new timestamp system.currenttimemillis 第二種 sysdate 1 oracle中extract 函式從oracle 9i中引入,用於從乙個date或者interval型別中擷取到特定的部分 語法如...