表a
z1 z2 z3
2010-07-22 14:55:05.033 2010-09-15 18:48:12.000 3
2010-07-22 14:57:20.313 2010-10-26 05:36:00.087 4
....
需要按月统计出。
2010-07
2010-08
2010-09
2010-07
2010-08
2010-09
2010-10
.。。
z1 z2 z3
2010-07-22 14:55:05.033 2010-09-15 18:48:12.000 3
2010-07-22 14:57:20.313 2010-10-26 05:36:00.087 4
....
需要按月统计出。
2010-07
2010-08
2010-09
2010-07
2010-08
2010-09
2010-10
.。。
解决方案 »
- oracle 表执行for update语句不成功的问题,求救!!!!
- PL/SQL测试时是如何赋值到变量的
- 关于数据库连接的问题,忘高手给小弟解惑!
- 关于pl/sql developer的问题
- 请问是in()括号中不能超过1000个条件吗?
- 怎么样修改oracle sesssion 的timeout啊
- 求 plsql 代码 查询语句一句
- 请教:分组查询的结果集可以用select into 创建新表吗?
- Oracle text manager
- 一个学生表,一个成绩表,成绩表中有每个学生m门课分数,大于60分算及格,查询及格率>=0.5学生数量
- PL/SQL 输出问题
- plsql连接oracle11G出现ORA-12154: TNS: 无法解析指定的连接标识符
select a_date,count(a_date) c_num from (
with t1 as(
select date'2010-07-22' b_date,date'2010-09-15' e_date from dual union all
select date'2010-07-22',date'2010-10-26' from dual )
select to_char(a_date,'yyyy-mm') a_date from (
SELECT ADD_MONTHS(DATE'2009-12-01',LEVEL) AS a_date
FROM DUAL
CONNECT BY LEVEL <= 12),t1
where a_date between ADD_MONTHS(b_date,-1) and e_date)
group by a_date
order by a_date
a_date c_num
--------------------------
1 2010-07 2
2 2010-08 2
3 2010-09 2
4 2010-10 1
select a_date,count(a_date) c_num from
(
with t1 as --t1 你的表名 日期格式自己转换下
(
select date'2010-07-22' b_date,date'2010-09-15' e_date from dual union all
select date'2010-07-22',date'2010-10-26' from dual
)
select to_char(a_date,'yyyy-mm') a_date from
(
SELECT ADD_MONTHS(DATE'2009-12-01',LEVEL) AS a_date --构建一个月份表来关联你的表
FROM DUAL
CONNECT BY LEVEL <= 12
),t1
where a_date between ADD_MONTHS(b_date,-1) and e_date
)
group by a_date
order by a_date