向大家请教一个简单的语句怎么写!
一个表T,里面有a,b,c,d4个字段,我想根据a字段分组,并对d字段执行count操作,d字段存放数字。
比如:
a b c d
=============
y as ff 2
y as ff 3
y sd ff 5
u sf ff 9
u sd ff 7
u sdf ff 56
u sdf ff 6
ss sdf ff 7
ss sdf ff 2
ss sdf ff 1要实现这样的效果怎么做啊?
现在就困在gruoup by的时候必须把a,b,c,d4个字段都写上去,我只想groupby a这样怎么实现?
希望各位帮我下,谢谢了!
一个表T,里面有a,b,c,d4个字段,我想根据a字段分组,并对d字段执行count操作,d字段存放数字。
比如:
a b c d
=============
y as ff 2
y as ff 3
y sd ff 5
u sf ff 9
u sd ff 7
u sdf ff 56
u sdf ff 6
ss sdf ff 7
ss sdf ff 2
ss sdf ff 1要实现这样的效果怎么做啊?
现在就困在gruoup by的时候必须把a,b,c,d4个字段都写上去,我只想groupby a这样怎么实现?
希望各位帮我下,谢谢了!
select a,count(d) from tt group by a
不行吗
b,c要怎么处理
按这个例子你给个结果
select a,b,c,d,count(d)over(partition by a)
from tt
from tt
group by a
这样是你想要的
比如原来数据时这样的:a b c d
====================
y as ff 2
y kk ff 3
y as ff 5
y kk ff 5u sf qq 9
u sd qq 56
u sd qq 6
================================
我想得到的是:a b c d count(b)
====================
y as ff 7 2
y sd ff 12 2
u sf qq 9 1
u sd qq 7 2这样怎么实现啊?
from table1
group by a,b,c
y sd ff 12 2
应该是y kk ff 12 2
统计b字段是kk的
你举的例子和结果不对应哦
不知道你到底要根据什么分组
from table1
group by a,b,c
from table1
group by a,b,c
只要d不为空,和count(d)是一样的
要根据a,b,c分组,那么如果来个别的字段,分组后的那些e,f。。字段该怎么处理?
你就不管其他字段
select a,b,c,count(d) from table1 group by a,b,c好了
或者也要查看其他字段的话,就不要聚合了
select a,b,c,d,e,count(d)over(partition by a,b,c)
from table1count()over()是分析函数
如果你有好的ORACLE基础语法学习资料,麻烦发个资料,好好学习下了,谢谢啦!
通过a字段来分组,然后在a字段里每一组相同的值对b字段进行计数,c字段显示,然后对d,e,f字段进行sum()算法,这样怎么实现噢?麻烦各位了,这次真让我学习到了oracle的好多东西!希望大家能帮下我!
select a,b,c,sum(d),sum(e),sum(f),count(1)
from table1
group by a,b,c即可
要用分析函数的话
select a,b,c,sum(e)over(partition by a,b,c),sum(f)over(partition by a,b,c)...
from table1资料你可以到csdn下载频道找找,我是自己买看的
oracle database 11g 开发指南
from tt