暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 取数空日期为日期不匹配,条件为

askTom 2016-09-27
170

问题描述

先生,

有记载月明喜欢

日期1
-----------
10/2015
11/2015
03/2016
06/2016
09/2016


我想得到这样的结果
从开始日期到结束日期
开始日期:= 2015年6月
结束日期:= 12/2016

注意:当条件不匹配时,应返回空的

日期1
----------------------
空的
空的
空的
空的
10/2015
11/2015
空的
空的
空的
03/2016
.
.
.
.
12/2016


请帮我...

谢谢你

专家解答

也许是这样的?

SQL> create table t
  2  as select add_months(date '2015-01-01',rownum) d
  3  from dual
  4  connect by level <= 24;

Table created.

SQL>
SQL> select * from t order by 1;

D
---------
01-FEB-15
01-MAR-15
01-APR-15
01-MAY-15
01-JUN-15
01-JUL-15
01-AUG-15
01-SEP-15
01-OCT-15
01-NOV-15
01-DEC-15
01-JAN-16
01-FEB-16
01-MAR-16
01-APR-16
01-MAY-16
01-JUN-16
01-JUL-16
01-AUG-16
01-SEP-16
01-OCT-16
01-NOV-16
01-DEC-16
01-JAN-17

24 rows selected.

SQL>
SQL>
SQL> select
  2    d,
  3    case when d between date '2015-06-01' and date '2016-12-01' then d end  subset_of_dates
  4  from t
  5  order by 1;

D         SUBSET_OF
--------- ---------
01-FEB-15
01-MAR-15
01-APR-15
01-MAY-15
01-JUN-15 01-JUN-15
01-JUL-15 01-JUL-15
01-AUG-15 01-AUG-15
01-SEP-15 01-SEP-15
01-OCT-15 01-OCT-15
01-NOV-15 01-NOV-15
01-DEC-15 01-DEC-15
01-JAN-16 01-JAN-16
01-FEB-16 01-FEB-16
01-MAR-16 01-MAR-16
01-APR-16 01-APR-16
01-MAY-16 01-MAY-16
01-JUN-16 01-JUN-16
01-JUL-16 01-JUL-16
01-AUG-16 01-AUG-16
01-SEP-16 01-SEP-16
01-OCT-16 01-OCT-16
01-NOV-16 01-NOV-16
01-DEC-16 01-DEC-16
01-JAN-17

24 rows selected.


「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论