获取大多数行中使用的列值 - SQL

时间:2014-06-11 11:03:13

标签: sql sql-server sql-server-2000

假设我有一张桌子,每个鸡蛋都有详细信息,

EggTable
 - Egg Identitfier (Name + Number)
 - Chicken Name Which Layed Egg
 - Time of Egg Came out

现在我想知道哪只鸡产蛋最多,我不确定我可以使用哪种SQL函数或查询。

请注意,我不想指定任何参数。并且需要鸡名作为输出,谢谢。

2 个答案:

答案 0 :(得分:1)

select count(*) as Count, ChickenName
FROM TABLE 
GROUP BY ChickenName;

答案 1 :(得分:0)

SELECT COUNT(*) AS NumOfEggs, ChickenName
FROM Eggs
GROUP BY ChickenName

这会根据鸡名称对表格中的条目进行分组,并总结每个鸡名称中的条目数。

您现在可以选择包含最多鸡蛋的条目:

SELECT TOP 1 NumOfEggs, ChickenName FROM
(
    SELECT COUNT(*) AS NumOfEggs, ChickenName
    FROM Eggs
    GROUP BY ChickenName
)
ORDER BY NumOfEggs DESC