arongsoft 发表于 2018-9-26 06:02:48

Oracle SQL语句查询日历

  闲来无事,玩起Linux的cal命令,显示出某年某月的月历。尝试着用SQL语句写了一个类似的功能,有不完善的地方,请诸位大师指点!
  查询某年某月的月历,输入字符串类型YYYYMM(比如'201102'表示2011年2月份):
  


[*]select max(decode(wk, 1, d)) Sun,
[*]       max(decode(wk, 2, d)) Mon,
[*]       max(decode(wk, 3, d)) Tue,
[*]       max(decode(wk, 4, d)) Wed,
[*]       max(decode(wk, 5, d)) Thu,
[*]       max(decode(wk, 6, d)) Fri,
[*]       max(decode(wk, 7, d)) Sat
[*]from (select to_char(rownum, '00') d,
[*]               trunc((to_number(to_char(to_date('201109' || '01'), 'D')) + rownum - 2) / 7) p,
[*]               to_char(to_date('201109' || '01') + rownum - 1, 'D') wk
[*]          from dual
[*]      connect by rownum
页: [1]
查看完整版本: Oracle SQL语句查询日历