|
Скажем в таблице пользователя есть некое поле хранящее целое число.
Я хочу вычислить медиану и среднее арифметическое по этому полю. Кто нибудь писал подобный запрос ранее. Я даже забыл как медиану то считать :)
|
|||||||
| комментировать |
|
t - таблица, в которой
val - "некое поле хранящее целое число" Запрос возвращает медиану и среднее арифметическое: SELECT top 1 t1.val median, avg( t2.val) average FROM t AS t1, t AS t2 GROUP BY t1.id, t1.val ORDER BY abs( sum( case when t1.val > t2.val then 1 when t1.val < t2.val then -1 else 0 end ) )
|
|||||
| Комментировать |
|
Сортируете все записи по числовому полю и выбираете среднюю строку. Как сделать это одним запросом - не знаю.
|
|||||
| Комментировать |