SQL:计算Oracle中多列的出现次数
Posted
技术标签:
【中文标题】SQL:计算Oracle中多列的出现次数【英文标题】:SQL: Counting number of occurances over multiple columns in Oracle 【发布时间】:2009-04-08 11:01:54 【问题描述】:无法理解将返回用户访问特定服务的次数的 SQL。认为它可能需要嵌套计数和选择,但无法理解它。
数据如下:
UserID Service
---------------
1 Map1
1 Map2
1 Map1
2 Map1
2 Map2
3 Map4
3 Map2
3 Map2
3 Map2
... ...
所需的输出类型大致如下:
UserID Service TimesAccessed
------------------------------
1 Map1 2
1 Map2 1
2 Map1 1
2 Map2 1
3 Map3 3
3 Map4 1
... ... ...
任何帮助将不胜感激。
【问题讨论】:
【参考方案1】:我认为这样做:
SELECT UserID, Service, COUNT(UserID) TimesAccessed
FROM Table
GROUP BY UserID, Service
【讨论】:
【参考方案2】:这样的?
select
userid, service, count(userid)
from
table
group by
userid, service
【讨论】:
没问题,很高兴我们能提供帮助。 对不起,你还以为你真的比我快了一秒! 没关系,这一次,不要再做了。不过,您的答案格式更好,更完整。以上是关于SQL:计算Oracle中多列的出现次数的主要内容,如果未能解决你的问题,请参考以下文章
Oracle SQL:计算给定条目的属性出现的频率并选择出现次数最多的属性
如何计算 Oracle varchar 值中字符的出现次数?