怎么把一个表的同一个字段,用一条语句,按不同的条件,分别显示在同一个查询窗口.
比如说我有个表有个rq_date的日期字段,里面的日期是按顺序排列的,我需要查询结果显示两个字段rq1,rq2,rq1的内容是1-10日,rq2的内容是11-20日.
这个能实现么.
比如说我有个表有个rq_date的日期字段,里面的日期是按顺序排列的,我需要查询结果显示两个字段rq1,rq2,rq1的内容是1-10日,rq2的内容是11-20日.
这个能实现么.
用case试一下
SELECT xinjiang_date as rq1 FROM M_XINJIANG_DATE where xinjiang_date>to_date('2012-09-01','yyyy-mm-dd') and xinjiang_date<to_date('2012-09-10','yyyy-mm-dd');
SELECT xinjiang_date as rq2 FROM M_XINJIANG_DATE where xinjiang_date>to_date('2012-09-11','yyyy-mm-dd') and xinjiang_date<to_date('2012-09-20','yyyy-mm-dd');
这两条sql语句查询出来的是分两次查询,分开显示的,怎么能把我这两个查询结果用一条语句一次显示出来
2 select (trunc(sysdate,'mm')+rownum-1) from dual connect by rownum <= 2已创建20行。tony@ORCL2> select
2 case when extract(day from rq_date)<=10 then rq_date else null end rq1
3 case when extract(day from rq_date)>10 then rq_date else null end rq2
4 from t;RQ1 RQ2
-------------- --------------
01-10月-12
02-10月-12
03-10月-12
04-10月-12
05-10月-12
06-10月-12
07-10月-12
08-10月-12
09-10月-12
10-10月-12
11-10月-12
12-10月-12
13-10月-12
14-10月-12
15-10月-12
16-10月-12
17-10月-12
18-10月-12
19-10月-12
20-10月-12已选择20行。tony@ORCL2>