`
jiaguwen123
  • 浏览: 411050 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

CONNECT BY LEVEL 实现12月统计数据

阅读更多

create table test(j varchar2(10),k varchar2(10),l date);
insert into test values('oracle','xun',to_date('2010-11','YYYY-MM'));
insert into test values('java','luxun',to_date('2010-11','YYYY-MM'));
insert into test values('c','xun',to_date('2010-11','YYYY-MM'))

insert into test values('c','xun',sysdate);
insert into test values('java','xun',sysdate);
insert into test values('c++','xun',sysdate); SELECT b.l 月份, nvl(a.amount, 0) 数量
 
FROM (select to_char(l, 'mm')  l, count(*)  amount
         
from test
        
group by to_char(l, 'mm')) a,
       (
SELECT lpad(to_char(LEVEL), 2, '0') l
         
FROM dual
        CONNECT
BY LEVEL <= 12) b
WHERE b.l = a.l(+)
ORDER BY b.l;
/*
月份    数量
1    0
2    0
3    0
4    0
5    0
6    0
7    0
8    0
9    0
10    0
11    3
12    0
*/

分享到:
评论

相关推荐

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--随书源代码

    10.3.4 与CONNECT BY的不同点 276 10.4 复制CONNECT BY的功能 277 10.4.1 LEVEL伪列 278 10.4.2 SYS_CONNECT_BY_PATH函数 279 10.4.3 CONNECT_BY_ROOT运算符 281 10.4.4 CONNECT_BY_ISCYCLE伪列和NOCYCLE参数 ...

    淘宝网开发人员数据库知识手册.docx

    6. **DATE**: 存储日期和时间数据,范围从 -4712年1月1日到 +4712年12月31日。 7. **TIMESTAMP(factional_seconds_precision)**: 存储日期、时间和毫秒级别的精度数据,适用于需要高精度时间记录的场景。 **第二...

    oracle考试题目.docx

    - 外键用于建立不同表之间的关联,实现数据之间的参照完整性。通过定义外键,可以确保表间的链接正确无误,避免无效的数据引用。 3. **为什么要对某些字段的取值进行限制?** - 对字段进行限制(如非空约束、唯一...

    oracle常用的100个函数

    38. **CONNECT_BY_ROOT**:在层次查询中标识根节点。 39. **ROWNUM**:返回行号,常用于限制查询结果的数量。 40. **RANK()** / **DENSE_RANK()** / **ROW_NUMBER()**:在分组或排序后的行中生成唯一标识符。 41. **...

    oracle中日期的相关操作

    CONNECT BY LEVEL (SYSDATE - TO_DATE('2010-03-08', 'YYYYMMDD')) * 24 ) SELECT COUNT(*) FROM dates WHERE TO_CHAR(dt, 'DY', 'NLS_DATE_LANGUAGE = AMERICAN') NOT IN ('SATURDAY', 'SUNDAY'); ``` ### 4...

    建立新年分区脚本.txt

    connect by rownum ) union all --增加最大分区 select 'alter table ' || v_minp_rec.table_owner || '.' || v_minp_rec.table_name || ' add partition ' || v_max_part_name || ' values less than ...

    精髓Oralcle讲课笔记

    (使用order by desc字段 对数据进行降序排列 默认为升序asc); 27、select * from dept where deptno &lt;&gt;10 order by deptno asc; --(我们可以将过滤以后的数据再进行排序) 28、select ename, sal, deptno from ...

Global site tag (gtag.js) - Google Analytics