【问题标题】:Mean vs Median that is the? [duplicate]均值 vs 中位数是什么? [复制]
【发布时间】:2017-10-02 20:03:45
【问题描述】:

我有许多选择语句来计算总和、除法和平均值等字段。但是,我现在需要包含基于查询的中位数以及平均值(avg)。该表在 MSSQL 数据库中包含 50,000 行,因此在同一个查询返回中,我需要为每一行返回结果。

我知道 SQl 中没有中值公式,我不知道。我正在使用 SQL 2012。所以如果有人有想法,我会欢迎你的想法,因为我不能是唯一一个反对这个的人。

例子是这样的

Select 
     Round (AVG ([LENGTH]),2) as Length_X,
     Round (Median ([LENGTH]),2) as Length_median,

我了解 Median 不是公认的 sql 语句,因此仅用于演示目的,以表达我的观点

干杯

【问题讨论】:

  • “我不可能是唯一一个反对这个的人。”然而你还是决定问这个问题。 :)
  • 中位数与第 50 个百分位数相同。从 2012 年开始,百分位数作为函数存在
  • 不是很有帮助的阿奎那,但是嘿,生活总是需要笑声
  • 谢谢 Jamiec - 我会试试的

标签: sql sql-server select calc


【解决方案1】:

如果你有数字数据,那么就有一个“中位数”函数。 It is just spelled differently:

select percentile_cont(0.5) within group (order by ??) over ()

select percentile_disc(0.5) within group (order by ??) over ()

(两者之间的区别是微妙的,对于大多数用途来说可能无关紧要。)

不幸的是,它不是一个聚合函数,所以它经常用在子查询中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-11-06
    • 2014-09-28
    • 2011-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-03
    相关资源
    最近更新 更多