如果您能给我一些有关如何选择具有不同ID的网址中最常见的第一项的提示,我们将不胜感激。
因此,例如,我有一个表(session_id
,time
,url
),我想知道排名前10位的url,不同的用户在使用浏览器时首先输入该URL。我应该从哪里开始?
答案 0 :(得分:1)
您可以使用聚合查询来计算每个URL的会话总数,然后可以使用SQLServer TOP
关键字来选择排名最高的记录,例如:
SELECT TOP 10 url, COUNT(session_id) total_sessions
FROM mytable
GROUP BY url
ORDER BY total_sessions DESC
如果您只希望每个URL一次计数每个session_id,则可以使用COUNT(DISTINCT...)
:
SELECT TOP 10 url, COUNT(DISTINCT session_id) total_sessions
FROM mytable
GROUP BY url
ORDER BY total_sessions DESC
答案 1 :(得分:0)
SELECT TOP 10 url, COUNT(session_id) total_sessions
FROM mytable
GROUP BY url
ORDER BY total_sessions DESC