gpt4 book ai didi

mysql - 从 x 条记录中以五组为一组选择 SUM、MAX、MIN、AVG

转载 作者:行者123 更新时间:2023-11-29 22:19:14 25 4
gpt4 key购买 nike

我正在尝试创建一个对结果集进行计算的查询,它选择 SUM、MIN、MAX、AVG,但没有可靠的标准。

这是我正在使用的一些数据。

ITEM   VALUE  doe
10703 3 01/05/2015 06:48
10703 3 01/05/2015 06:49
10419 -16 01/05/2015 06:54
10259 4 01/05/2015 07:09
10578 5 01/05/2015 07:39
10196 2 01/05/2015 07:52
10580 -16 01/05/2015 08:07
10872 2 01/05/2015 08:22
10872 2 03/05/2015 08:23
10619 6 03/05/2015 08:32
10663 -5 03/05/2015 08:55
10652 -4 03/05/2015 09:09
10637 3 03/05/2015 09:23
10650 -2 04/05/2015 09:35

我尝试了以下 SQL -

SELECT t0.*, SUM(t0.VALUE) as SUMA, MAX(t0.VALUE) AS MAX, MIN(t0.VALUE) AS MIN, AVG(t0.VALUE) AS AVG FROM ( SELECT ITEM, VALUE, doe FROM VALUES WHERE doe between '01/05/2015 00:00:00' AND '01/05/2015 23:59:59' ORDER BY doe LIMIT 5 ) t0 
UNION ALL
SELECT t1.*, SUM(t1.VALUE) as SUMA, MAX(t1.VALUE) AS MAX, MIN(t1.VALUE) AS MIN, AVG(t1.VALUE) AS AVG FROM ( SELECT ITEM, VALUE, doe FROM VALUES WHERE doe between '03/05/2015 00:00:00' AND '03/05/2015 23:59:59' ORDER BY doe LIMIT 5 ) t1

等...

结果如下所示

SUMA   MAX   MIN  AVG  ITEM   DOE
-1 5 -16 0.2 10703 01/05/2015 06:48
8 10 -5 -1 10652 03/05/2015 08:32

这可以完成工作,但如果有一个日期包含一个值,则 5 组是不完整的,因此当我将其用于六西格码统计时,这会破坏数据。

本质上,我需要能够选择它在组中看到的每五个记录,直到达到十组,我一直无法找到如何做到这一点的方法,所以我被迫寻求帮助!

如果有人可以建议我能做什么,我将不胜感激。

如果需要更多信息,请询问

最佳答案

我不确定为什么同时涉及表 T0/T1 和 UNION。有必要展示问题吗?另外我认为其他人是正确的,它不应该运行,因为查询中有 T0.* 所以它不会自动分组任何内容。不过,仅包含聚合的查询可以工作。

至于问题,我不完全确定您想要什么,但是您不能在聚合中执行 COUNT 操作并排除任何不包含 5 行的内容吗?

关于mysql - 从 x 条记录中以五组为一组选择 SUM、MAX、MIN、AVG,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30911521/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com