我有一个具有以下结构的表。
create table FindMedians
( GroupByColumn varchar(100)
, TimeInterval_1 int
, TimeInterval_2 int
, TimeInterval_3 int
);
我需要找到每组每个时间间隔的中位数。我一直在分别计算每列的中位数并将它们联合起来,然后 PIVOTing 得到最终结果:
按列分组 中位数1 中位数2 中位数3
使用函数在 Sql Server 中计算中位数的解决方案中给出的查询
注意:我只是使用查询,我还没有创建函数。
原始表有接近 500K 行,尝试分别计算每列的中位数很慢。是否有一种性能良好的方法可以在单个查询中为我提供所有列的中位数,而不必为每列单独计算?
谢谢