Я хочу рассчитать стандартное отклонение между просмотрами страниц на моем сайте. Я хотел бы сделать это, используя чистый MySQL - без запроса всей таблицы на веб-сервер - и вернуть один номер в код PHP для дальнейшего использования. Каждый вид страницы хранятся в виде visitor_id
- page_id
- visit_count
трио в соответствии со следующей схемой:Как получить стандартное отклонение сгруппированных строк?
+============+=========+=============+
| visitor_id | page_id | visit_count |
+============+=========+=============+
| 1 | 2 | 7 |
+------------+---------+-------------+
| 2 | 2 | 4 |
+------------+---------+-------------+
| 1 | 1 | 17 |
+------------+---------+-------------+
| 3 | 2 | 12 |
+------------+---------+-------------+
| 1 | 3 | 639478 |
+------------+---------+-------------+
| 2 | 1 | 6 |
+------------+---------+-------------+
page_id
относится к primary_key в таблице страниц, visitor_id
относится к primary_key в таблице посетителей. Первичный ключ этой таблицы - это пара - page_id
, так как одна и та же страница, которую видит тот же посетитель, записывается путем увеличения visit_count
соответствующей строки вместо создания новой.
Перед вычислением стандартного отклонения, записи должны быть сгруппированы по page_id
, их visit_count
суммируется (visitor_id могут быть проигнорированы здесь), так что, по сути, я хочу, чтобы вычислить отклонение следующее:
+=========+=============+
| page_id | visit_count |
+=========+=============+
| 2 | 23 |
+---------+-------------+
| 1 | 23 |
+---------+-------------+
| 3 | 639478 |
+---------+-------------+
Я знаю о возможных PHP-решениях, но меня интересует MySQL.
Спасибо за ваши быстрый ответ. Я имел в виду ** стандартное отклонение **, как в математической статистике (дисперсия или отклонение от среднего). –
«стандартное отклонение» очень хорошо понято. Но что? На страницах с суммированными подсчетами или посетителем? Примеры данных и желаемые результаты очень полезны. –