29 февраля, 2016 | Автор:
Naik | Категория:
MySQL |
Нет комментариев »
Нахождение медианы в массиве для MySQL я решил способом ниже. Кто знает более лучшие варианты скидывайте :). Но, желательно, без использования стандартных функций СУБД для нахождения медианы.
set @a := 0;
set @cnt := (select count(*) from t_table);
select
(sum(case when num = ceil(@cnt / 2) then c_value else null end)
+ sum(case when num = ceil((@cnt + 1) / 2) then c_value else null end)) / 2
from(
select (@a := @a + 1) num,c_value from t_table order by c_value
)w
Добавить комментарий