我有多个提名人和民意调查的选举结果表。我需要确定每个投票中哪个被提名人的票数最多。
以下是表中数据的示例:
PollID NomineeID 投票 1 1 108 1 2 145 1 3 4 2 1 10 2 2 41 2 3 0
我将不胜感激任何人可以为我提供的任何建议或帮助。
我有多个提名人和民意调查的选举结果表。我需要确定每个投票中哪个被提名人的票数最多。
以下是表中数据的示例:
PollID NomineeID 投票 1 1 108 1 2 145 1 3 4 2 1 10 2 2 41 2 3 0
我将不胜感激任何人可以为我提供的任何建议或帮助。
这将匹配最高的,也将带回关系。
select sd.*
from sampleData sd
    inner join (
        select PollID, max(votes) as MaxVotes
        from sampleData
        group by PollID
    ) x on
        sd.PollID = x.PollID and
            sd.Votes = x.MaxVotes
SELECT 
  t.NomineeID,
  t.PollID
FROM 
  ( SELECT
      NomineeID,
      PollID, 
      RANK() OVER (PARTITION BY i.PollID ORDER BY i.Votes DESC) AS Rank
    FROM SampleData i) t
WHERE 
  t.Rank = 1
select Pollid, Nomineeid, Votes from Poll_table 
where Votes in ( 
    select max(Votes) from Poll_table 
    group by Pollid
);
SELECT PollID, NomineeID, Votes
FROM 
table AS ABB2
    JOIN
       (SELECT PollID, MAX(Votes) AS most_votes
        FROM table) AS ABB1 ON ABB1.PollID = ABB2.PollID AND ABB1.most_votes = ABB2.Votes
请注意,如果您有 2 位候选人在同一个投票中获得最多票数,他们都将被使用此查询拉出