gamesover 发表于 2013-04-06 10:57

如何分组后再统计频率?

先根据某条件分组,每个小组再取出某频率(比如第一高或者第二高等)的字符(如果两个字符出现频率一样要都显示)

小弟被这个SQL题目卡住好几天,万般无奈上来求助

这个题目原题是公司里面进行几种业务操作(是一个column,每种操作都有一个符号代表),问如何sql得出本年度每种操作哪个员工做的第一多,第二多等
简化表示下
table   operation   employee
               '<'               id1
               '<'               id1
               '<'               id2
               '*'               id3
               '/'                id1

大家有什么好方法吗?

wlmouse 发表于 2013-04-07 11:06

本帖最后由 wlmouse 于 2013-04-07 11:06 编辑

看看Oracle的分析函数

zhaopingzi 发表于 2013-04-07 18:01

select   employee,operation,count(*) fromtable group by operation

wq_1228 发表于 2013-04-15 15:03

问题本身看上去比较复杂,可以通过view来降低问题的复杂度。

通过分组函数建立一个view,
比如:每个社员,每个操作为单位的执行次数。

然后根据具体情况,检索view的数据即可。
执行次数条件指定
页: [1]
查看完整版本: 如何分组后再统计频率?