相关疑难解决方法(0)

如何使用1 mySQL查询返回所有结果的数字箱图数据?

[tbl_votes]
- id <!-- unique id of the vote) -->
- item_id <!-- vote belongs to item <id> -->
- vote <!-- number 1-10 -->
Run Code Online (Sandbox Code Playgroud)

当然,我们可以通过获得:

  • smallest observation(所以)
  • lower quartile(LQ)
  • median(我)
  • upper quartile(UQ)
  • largest observation(lo)

..一个一个地使用多个查询,但我想知道是否可以使用单个查询完成.

在Oracle中我可以使用COUNT OVERRATIO_TO_REPORT,但mySQL不支持.

对于那些不知道盒子图是什么的人:http://en.wikipedia.org/wiki/Box_plot

任何帮助,将不胜感激.

mysql math percentile

7
推荐指数
1
解决办法
1681
查看次数

SQL 查询中的四分位数

我有一个非常简单的表格:

CREATE TABLE IF NOT EXISTS LuxLog (
  Sensor TINYINT,
  Lux INT,
  PRIMARY KEY(Sensor)
)
Run Code Online (Sandbox Code Playgroud)

它包含来自不同传感器的数千个日志。

我希望所有传感器都有 Q1 和 Q3。

我可以对每个数据进行一次查询,但最好对所有传感器进行一次查询(从一次查询中获取 Q1 和 Q3)

我认为这将是一个相当简单的操作,因为四分位数被广泛使用并且是频率计算中的主要统计变量之一。事实是,我发现了大量过于复杂的解决方案,而我希望找到一些简洁明了的解决方案。

任何人都可以给我一个提示?

编辑:这是我在网上找到的一段代码,但它对我不起作用:

SELECT  SUBSTRING_INDEX(
        SUBSTRING_INDEX(
            GROUP_CONCAT(                 -- 1) make a sorted list of values
                Lux
                ORDER BY Lux
                SEPARATOR ','
            )
        ,   ','                           -- 2) cut at the comma
        ,   75/100 * COUNT(*)        --    at the position beyond the 90% portion
        )
    ,   ','                               -- 3) cut at the comma
    ,   -1                                --    right after …
Run Code Online (Sandbox Code Playgroud)

mysql sql percentile quantile

4
推荐指数
2
解决办法
3万
查看次数

标签 统计

mysql ×2

percentile ×2

math ×1

quantile ×1

sql ×1