Oracle sql技巧--生成序列

30 篇文章 0 订阅
20 篇文章 0 订阅

1.获取未来4年的年份序列

select to_char(add_months(sysdate, (level - 1) * 12), 'yyyy') as yearSeq
  from dual
connect by level <= 4;

查询结果:


2.获取包含当季的过去4个季度,并升序排列

--获取当前季度并向前推4个季度
select to_char(add_months(trunc(sysdate, 'q'), -3 * level + 3), 'yyyy-q') quarter
  from dual
connect by level <= 4
 order by quarter;

查询结果:

说明:

--返回当季第一天
select trunc(to_date('2017-03-20', 'yyyy-mm-dd'), 'q') from dual;

查询结果:

有关trunc函数的详细用法见Oracle trunc()函数的用法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值