Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Найти самые часто встречающиеся элементы  [new]
spiderman5
Member

Откуда:
Сообщений: 11
Всем привет ! Есть у меня таблица ScorePlayers, в которой такие поля: ID, Surname и другие.
В таблицу введены 10 фамилий: 6 фамилий встречаются по 1 разу, фамилии Петров и Иванов - по 2 раза.
Как написать запрос, чтобы выводить, какие фамилии встречаются чаще всего и сколько раз ???

Я пробовал таким образом:
SELECT TOP 2 Goalplayers.Surname, MAX(Goalplayers.Goales2) AS Goales FROM(
SELECT P.Surname, COUNT(*) AS Goales2 FROM Players P
GROUP BY P.Surname) AS Goalplayers
GROUP BY Goalplayers.Surname
ORDER BY MAX(Goalplayers.Goales2) DESC

Здесь выведутся Петров - 2 и Иванов - 2.
Но здесь я прописываю TOP 2 сам, а как сделать, когда не знаешь, сколько будет фамилий с максимальным результатом ???

Я пытался сделать так, но не получается:
SELECT Goalplayers.Surname, MAX(Goalplayers.Goales2) AS Goales FROM(
SELECT P.Surname, COUNT(*) AS Goales2 FROM Players P
GROUP BY P.Surname) AS Goalplayers
GROUP BY Goalplayers.Surname
HAVING COUNT(Goales) = MAX(Goalplayers.Goales2) // Не видит поле Goales
ORDER BY MAX(Goalplayers.Goales2) DESC


Помогите, пожалуйста, как написать полностью правильно запрос.
8 июн 15, 14:17    [17744661]     Ответить | Цитировать Сообщить модератору
 Re: Найти самые часто встречающиеся элементы  [new]
Glory
Member

Откуда:
Сообщений: 104751
spiderman5
Но здесь я прописываю TOP 2 сам, а как сделать, когда не знаешь, сколько будет фамилий с максимальным результатом ???


SELECT TOP 1 WITH TIES Goalplayers.Surname, MAX(Goalplayers.Goales2) AS Goales FROM(
SELECT P.Surname, COUNT(*) AS Goales2 FROM Players P
GROUP BY P.Surname) AS Goalplayers
GROUP BY Goalplayers.Surname
ORDER BY MAX(Goalplayers.Goales2) DESC
8 июн 15, 14:19    [17744674]     Ответить | Цитировать Сообщить модератору
 Re: Найти самые часто встречающиеся элементы  [new]
spiderman5
Member

Откуда:
Сообщений: 11
Glory, благодарю за столь точный и быстрый ответ !!!
8 июн 15, 14:25    [17744703]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить