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

slavon-x86

Well-Known Member
18.12.2005
215
0
#1
Есть такая таблица:

Код:
-------------------------
= Зверь = Оценка =
-------------------------
= Тигр	= 5		  =
= Бобёр = 2		  =
= Тигр	= 5		  =
= Лис	 = 4		  =
= Тигр	= 3		  =
= Тигр	= 2		  =
...
...
Нужно выыести среднюю оценку каждого. Как это сделать ?
 
04.09.2006
2 566
2
Минск
#2
Вообще, для вычисления среднего есть функция AVG, если такая поддерживается сервером
 

slavon-x86

Well-Known Member
18.12.2005
215
0
#3
------------------------
= 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" ?
 

slavon-x86

Well-Known Member
18.12.2005
215
0
#5
Не работает !

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

А надо для всех уникальных "user_id" посчитать количество уникальных "user_ip"
 
04.09.2006
2 566
2
Минск
#7
Ну тогда вроде так:
Код:
select unigue.user_id, count(unigue.user_id)
from
(
select distinct user_id, user_ip
from table
) unique
group by unigue.user_id
 

slavon-x86

Well-Known Member
18.12.2005
215
0
#8
Работает, спасибо ! :)

По идее и так должно работать !
Код:
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) и не работает !