• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Среднее для каждого

  • Автор темы slavon-x86
  • Дата начала
S

slavon-x86

Есть такая таблица:

Код:
-------------------------
= Зверь = Оценка =
-------------------------
= Тигр	= 5		  =
= Бобёр = 2		  =
= Тигр	= 5		  =
= Лис	 = 4		  =
= Тигр	= 3		  =
= Тигр	= 2		  =
...
...

Нужно выыести среднюю оценку каждого. Как это сделать ?
 
E

European

Вообще, для вычисления среднего есть функция AVG, если такая поддерживается сервером
 
S

slavon-x86

------------------------
= user_id = user_ip =
-------------------------
= 1 = 10.1.100.1 =
= 5 = 10.1.100.2 =
= 1 = 10.1.100.1 =
= 2 = 10.1.100.2 =
= 2 = 10.1.100.1 =
= 2 = 10.1.100.1 =
...

Как для всех уникальных "user_id" посчитать количество уникальных "user_ip" ?
 
E

European

Код:
select user_id, user_ip, count(user_ip)
from table
group by user_id, user_ip
 
S

slavon-x86

Не работает !

В первой колонке выводит user_id (не уникальный);
Во второй колонке выводит user_ip;
В третьей количество всех user_ip;

А надо для всех уникальных "user_id" посчитать количество уникальных "user_ip"
 
E

European

Т.е. должно быть
------------------------
= user_id = count =
-------------------------
= 1 = 1 =
= 2 = 2 =
= 5 = 1 =

?
 
E

European

Ну тогда вроде так:
Код:
select unigue.user_id, count(unigue.user_id)
from
(
select distinct user_id, user_ip
from table
) unique
group by unigue.user_id
 
S

slavon-x86

Работает, спасибо ! :)

По идее и так должно работать !
Код:
SELECT DISTINCT user_id, COUNT(DISTINCT user_ip) FROM таблица GROUP BY user_id ORDER BY COUNT(DISTINCTuser_ip)

Но дома (MySQL 5.0.17) работает,
а закидую на хостинг jino.ru (MySQL: 4.1.14) и не работает !
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!