Как найти медианное значение для строки в SQL server 2008
Я пытаюсь найти медианное значение в строке в sql server. но я не смог получить на него никакого ответа.
select (select cast(Avg(TotAvg * 1.0 )as decimal(6,2)) from (values (convert(decimal(6,2), a)),(convert(decimal(6,2), b)),(convert(decimal(6,2), c)), (convert(decimal(6,2), d)),(convert(decimal(6,2), e)), (convert(decimal(6,2), f)),(convert(decimal(6,2), g)),(convert(decimal(6,2), h)),(convert(decimal(6,2), i)), (convert(decimal(6,2), j)),(convert(decimal(6,2), k)),(convert(decimal(6,2), l)),(convert(decimal(6,2), m)), (convert(decimal(6,2), n)),(convert(decimal(6,2), o)),(convert(decimal(6,2), p)),(convert(decimal(6,2), q)), (convert(decimal(6,2), r)),(convert(decimal(6,2), s)),(convert(decimal(6,2), s)),(convert(decimal(6,2), u))) as Totalavg(TotAvg)) as Median from temp
Что я уже пробовал:
select (select cast(Avg(TotAvg * 1.0 )as decimal(6,2)) from (values (convert(decimal(6,2), a)),(convert(decimal(6,2), b)),(convert(decimal(6,2), c)), (convert(decimal(6,2), d)),(convert(decimal(6,2), e)), (convert(decimal(6,2), f)),(convert(decimal(6,2), g)),(convert(decimal(6,2), h)),(convert(decimal(6,2), i)), (convert(decimal(6,2), j)),(convert(decimal(6,2), k)),(convert(decimal(6,2), l)),(convert(decimal(6,2), m)), (convert(decimal(6,2), n)),(convert(decimal(6,2), o)),(convert(decimal(6,2), p)),(convert(decimal(6,2), q)), (convert(decimal(6,2), r)),(convert(decimal(6,2), s)),(convert(decimal(6,2), s)),(convert(decimal(6,2), u))) as Totalavg(TotAvg)) as Median from temp