SQL 获得最高票的政党

SQL Getting the party with highest votes

我正在尝试通过 SQL 服务器制作一个投票系统,但我做不好。我想做的是获得最高票数的政党。

SELECT COUNT(*) 
FROM Vote 
    INNER JOIN Members ON Vote.Voted = Members.PartyName 
WHERE (PartyName is the biggest one)

我希望像 [DEMS][8] 这样的东西,或者至少是得票最高的政党名称。

而不是使用 WHERE 子句,您需要使用 SQL 方言中用于顶部记录的任何语法。您还需要按 partijnaam 分组。这是一个猜测,因为我不知道您的确切数据结构。

Postgres/MySQL

SELECT PartijNaam, COUNT(*) 
FROM stem 
    INNER JOIN leden ON stem.Gestemt = Leden.lidnummer 
GROUP BY PartijNaam
ORDER BY 2 DESC
LIMIT 1

SQL 服务器

SELECT TOP 1 PartijNaam, COUNT(*) 
FROM stem 
    INNER JOIN leden ON stem.Gestemt = Leden.lidnummer
GROUP BY PartijNaam
ORDER BY 2 DESC

SELECT PartyName FROM members INNER JOIN vote ON leden.LidNummer = stem.Gestemt GROUP BY PartyName ORDER BY COUNT(投票) DESC LIMIT 1;

试试这个:

  SELECT  PartijNaam, COUNT(*)as vote 
    FROM stem 
        INNER JOIN leden ON stem.Gestemt = Leden.lidnummer
    GROUP BY PartijNaam
    ORDER BY DESC