gpt4 book ai didi

sql - 如何使用 Stack Exchange Data Explorer 查找每个用户的热门标签?

转载 作者:行者123 更新时间:2023-12-04 01:58:16 27 4
gpt4 key购买 nike

我在 the Stack Exchange Data Explorer 中使用此查询:

select id, reputation
from users
where reputation >300000

我应该向这个查询添加什么,以便有一个带有用户“最佳”标签的附加列?

这是用户得分最高和/或用户拥有最多帖子(问题、答案)的标签。
例如,在我的用户页面中,在顶部标签中,我可以看到 .

最佳答案

这是使用 Common Table Expressions (CTE's) 的一种方法和 Correlated Subqueries .

在 SEDE 中查看:data.stackexchange.com/stackoverflow/query/815284/...

WITH tagAndUserStats AS (
SELECT
t.tagname,
p.owneruserid AS userid,
SUM (p.score) AS tagScore,
COUNT (p.id) AS postCount
FROM posts p
INNER JOIN posttags pt ON pt.postid = COALESCE (p.parentid, p.id)
INNER JOIN tags t ON pt.tagid = t.id
WHERE p.owneruserid >= 1
AND p.posttypeid IN (1, 2)
GROUP BY t.tagname,
p.owneruserid
)
SELECT
u.id as [User Link],
u.Reputation,
( SELECT TOP 1 tu.tagname
FROM tagAndUserStats tu
WHERE tu.userid = u.id
ORDER BY tu.tagScore DESC
) AS [Top Tag by Score],
( SELECT TOP 1 tu.tagname
FROM tagAndUserStats tu
WHERE tu.userid = u.id
ORDER BY tu.postCount DESC
) AS [Top Tag by Posts]
FROM users u
WHERE u.reputation > 300000
ORDER BY u.reputation DESC

返回结果如下:

用户链接声誉按分数排名最高标签按帖子排名最高标签
乔恩·斯基特 1010838 c# c#
BalusC 784437 java jsf
达林迪米特洛夫 783553 c# c#
VonC 753855 git git


备注:
  • 引用 the SEDE schema .
  • 由于您同时指定了问题和答案,并且没有排除社区 wiki 帖子,因此此查询的结果有时会与习惯值不同。
    对于徽章和诸如此类的东西,问题帖子和问题分数不计算在内,只有答案才计算在内。
  • 关于sql - 如何使用 Stack Exchange Data Explorer 查找每个用户的热门标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49139941/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com