SQL-запрос, чтобы получить все уникальные строки с UID - PullRequest
0 голосов
/ 01 января 2019

Я хочу узнать, какой пользователь получил наибольшее количество файлов, используя SQL-запрос.Моя таблица выглядит следующим образом, id | uid | ip.Теперь я хочу подсчитать количество строк, которое есть у uid, но оно должно быть уникальным для ip.Таким образом, никто не может дать многократные highfives человеку.

Я искал в интернете и ничего не мог найти по этому поводу.Если бы кто-нибудь мог помочь мне с этим, я был бы благодарен.

Ответы [ 2 ]

0 голосов
/ 01 января 2019
SELECT uid,COUNT(ip)NoOfVotes FROM
(SELECT uid,ip,Serial=ROW_NUMBER() OVER(PARTITION BY ip,uid ORDER BY uid)  FROM 
dbo.tbl_user)A
WHERE Serial=1
GROUP BY uid

Я думаю, что это даст вам идеальный подсчет голосов.Используя номер строки, активно удаляйте дубликаты с того же ip, того же uid.В этом запросе разрешено голосование за несколько uid с одного и того же ip.

0 голосов
/ 01 января 2019

вы можете попробовать как ниже

select ip, count(distinct uid) from table t
group by ip
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...