表数据如下:
A列 B列 C列 D列
1 3 1 2012-01-02
2 2 3 2012-01-03
3 1 4 2012-01-04
4 1 3 2012-01-05
2 3 2 2012-01-07
3 4 2 2012-01-08
4 3 1 2012-01-09
count(*) 我想根据A B C 三列分组 然后想根据D列某段时间内多少个怎么查询? D列不在分组条件内
A列 B列 C列 D列
1 3 1 2012-01-02
2 2 3 2012-01-03
3 1 4 2012-01-04
4 1 3 2012-01-05
2 3 2 2012-01-07
3 4 2 2012-01-08
4 3 1 2012-01-09
count(*) 我想根据A B C 三列分组 然后想根据D列某段时间内多少个怎么查询? D列不在分组条件内
解决方案 »
- 在oracle中,子查询的效率高,还是连接查询的效率高。
- 请教如何停止或取消查询
- 如何实现ORACLE的全库数据的检索啊,请大家多给点建议,非常感谢啊!!
- 急!急!关于ORACLE的Managerment Server问题
- 在线求救!Help!!!!Oracle 数据装入的问题(imp)????
- Oracle RAC 11g
- [请教]面试题里面,大中型数据库的设计问题
- 程序能够运行, 但当连接到SQL/PLUS出现提示:ORA-12514 : TNS: listener could not resolve SERVICE_NAME given in connect
- 关于时间的计算,如何计算时间1与时间2的差,并转换成分钟?
- 连接和会话的概念
- 同一个缴费号码一天连续缴费2次以上的记录 怎么找出来
- 请教一个job错误问题
--测试表创建
create table test2(
a number,
b number,
c number,
d varchar2(20)
)
--插入测试数据
insert into test2(
select 1,3,1,'2012-01-02' from dual union all
select 2,2,3,'2012-01-03' from dual union all
select 3,1,4,'2012-01-04' from dual union all
select 4,1,3,'2012-01-05' from dual union all
select 2,3,2,'2012-01-07' from dual union all
select 3,4,2,'2012-01-08' from dual union all
select 4,3,1,'2012-01-09' from dual)
--查询
select a,b,c,count(1)
from test2
where d between '2012-01-04' and '2012-02-05'
group by a,b,c
--查询结果
A B C count
4 1 3 1
2 3 2 1
4 3 1 1
3 1 4 1
3 4 2 1
--测试表的创建
create table test2(
a number,
b number,
c number,
d varchar2(20)
)
--插入测试数据
insert into test2(
select 1,3,1,'2012-01-02' from dual union all
select 2,2,3,'2012-01-03' from dual union all
select 3,1,4,'2012-01-04' from dual union all
select 4,1,3,'2012-01-05' from dual union all
select 2,3,2,'2012-01-07' from dual union all
select 3,4,2,'2012-01-08' from dual union all
select 4,3,1,'2012-01-09' from dual)
--查询
select a,b,c,count(1)
from test2
where d between '2012-01-04' and '2012-02-05'
group by a,b,c
--查询结果
A B C count
4 1 3 1
2 3 2 1
4 3 1 1
3 1 4 1
3 4 2 1