Как мне получить идентификатор пользователя, который присутствует в большинстве строк? SQL проблема - PullRequest
0 голосов
/ 07 мая 2020

Я не могу двигаться дальше и не могу найти подходящий пример с помощью Google Search. Может, я просто не знаю, как сформулировать свой поиск. В любом случае, это, вероятно, просто, и я просто не знаю, как его получить.

Как мне получить идентификатор пользователя, который находится в большинстве строк (пользователь, который собрал большинство билетов)?

Enter image description here

Любая подсказка или ссылка на подобное решение были бы действительно полезны.

Ответы [ 3 ]

0 голосов
/ 07 мая 2020

Вот мой взгляд на это. Группа подсчитывает по идентификатору пользователя, упорядочивает по убыванию и берется только первый. 1009 *, Oracle и Informix

0 голосов
/ 07 мая 2020

Этот запрос должен помочь

SELECT t1.UserId, 
(
 SELECT COUNT(*) 
 FROM {table} t2 
 WHERE t2.UserId = t1.UserId
) counter 
FROM {table} t1 
 GROUP BY t1.UserId 
 ORDER BY counter 
DESC LIMIT 1

Мы подсчитываем все строки, в которых появляется UserId, сортируем их в порядке убывания и отфильтровываем остальные.

0 голосов
/ 07 мая 2020

Я не уверен, что вы ищете, так как вопрос очень расплывчатый. Было бы полезно опубликовать образцы данных с ожидаемыми результатами.

Но, насколько я понимаю, найдите UserID с большим количеством поднятых тикетов. Приведенный ниже запрос даст вам количество пользователей, у которых больше всего наверху.

SELECT UserId, COUNT(*)
  FROM Table
 GROUP BY UserId
 ORDER BY 2 DESC
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...