如何返回重复项

问题描述 投票:0回答:2

我有 SQL Server。 例如我有这样的查询:

select playerid, fullname
from players
where playerid in (123,123,1234,1234,1234)

我如何才能返回结果重复项,我的意思是在这个例子中 - 返回玩家 123 的两次记录和玩家 1234 的 3 次记录。(我有一个很长的选择,其中包含大量玩家 ID)

sql sql-server duplicates
2个回答
0
投票

您似乎正在尝试做的是根据特定

players
值列表从
playerid
表中复制行。

要像您在示例中尝试执行的操作一样,您可以加入值列表,如下所示:

select playerid, fullname 
from players p
join (
  values(123),(123),(1234),(1234),(1234)
)x(PlayerId) on p.PlayerId = x.PlayerId;

0
投票

也许这就是你想要的:

SELECT playerid, fullname
FROM players
WHERE playerid IN (123, 123, 1234, 1234, 1234)
GROUP BY playerid, fullname
HAVING COUNT(*) > 1
© www.soinside.com 2019 - 2024. All rights reserved.