导航
  • 主页
  • Oracle 基础和管理
  • Oracle 高级技术
  • Oracle 认证与考试
  • 职位交流
  • 问答

如何将不同条件的group by放到一个select里面?

南飞雁 2003-06-12 07:45:52

c1 n1
------
b 1
b 2
c 1
c 2
c 3
c 4

我想得到下面的结果,根据c1 group by,符合c1='c',列2是count(*),列3是符合条件c1='c'并且n1>2的count(*),一个select显示出来,最好不要用union。
结果:
c1 sum1 sum2
--------------
c 4 2
...全文
59 点赞 收藏 6
写回复
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
taler 2003-06-13
是的,Lastdrop(空杯)的方法最容易理解
回复
oraclenewbie 2003-06-13
偶刚学oracle,看起来Lastdrop(空杯)的最好了,其他的偶都看不懂,是不是这样的?
回复
Lastdrop 2003-06-13
select c1, count(*) sum1, sum(decode(sign(n1-2),1,1,0)) sum2
from yourtable
where c1='c'
group by c1
回复
things 2003-06-12
select c.c1, max(a.b), max(b.c) from
(select c1, count(*) b from table1 group by c1) a,
(select c1, count(*) c from table1 where nl>2 group by c1) b,
table1 c
where a.c1(+)=c.c1 and b.c1(+)=c.c1
回复
BlueskyWide 2003-06-12
select tab1.aa,tab1.bb,tab2.dd from
(select c1 aa,count(*) bb from your_table group by c1) tab1,
(select c1 cc,count(*) dd from your_table where nl>2 group by c1) tab2
where tab1.aa=tab2.cc;
回复
jiezhi 2003-06-12
select c1,(select count(*) from a where c1='c') sum1,
(select count(*) from a where c1='c' and n1>2) sum2
from a where c1='c'
回复
发动态
发帖子
Oracle
创建于2007-09-28

1.6w+

社区成员

Oracle开发相关技术讨论
申请成为版主
社区公告
暂无公告