Sql 如何组合底部“;x";价值的百分比?
我有一个查询来创建一个包含数据的帕累托图。有15-20个铲斗,但底部5个左右的铲斗无关紧要,它们应该组合在一起。这是Access中的,因此我正在寻找一个可持续的查询,它可以获取最底层3%的值(或5%,随便什么),并将它们与一个新的Sql 如何组合底部“;x";价值的百分比?,sql,ms-access,Sql,Ms Access,我有一个查询来创建一个包含数据的帕累托图。有15-20个铲斗,但底部5个左右的铲斗无关紧要,它们应该组合在一起。这是Access中的,因此我正在寻找一个可持续的查询,它可以获取最底层3%的值(或5%,随便什么),并将它们与一个新的job\u code\u desc像“Other”一样进行分组。这是我的问题 SELECT original.job_code_desc, sum(original.sumofdowntime) AS SumOfDowntime FROM (SELECT IIF
job\u code\u desc
像“Other”一样进行分组。这是我的问题
SELECT
original.job_code_desc,
sum(original.sumofdowntime) AS SumOfDowntime
FROM
(SELECT IIF(pareto_downtime_detail_tbl.job_code_desc like "*RP*","HI-LO WORK",pareto_downtime_detail_tbl.job_code_desc) AS job_code_desc, Round(Sum([pareto_downtime_detail_tbl].[downtime]),2) AS SumOfdowntime
FROM pareto_downtime_detail_tbl
WHERE (((pareto_downtime_detail_tbl.position_desc) Like '*selector*'))
GROUP BY pareto_downtime_detail_tbl.job_code_desc
HAVING (((pareto_downtime_detail_tbl.job_code_desc) Not Like 'break' And (pareto_downtime_detail_tbl.job_code_desc) Not Like '*prep*'))
ORDER BY Round(Sum([pareto_downtime_detail_tbl].[downtime]),2) DESC) AS original
GROUP BY
original.job_code_desc
ORDER BY
sum(original.sumofdowntime) DESC;
我得到的结果是
job_code_desc SumOfDowntime
D2S ONHOLD 1653.85
IWHSUPPORT 1278.62
D2S LOAD 701.13
LIGHT DUTY 693.24
BATT0001 567.52
D2S MAINT 457.13
D2S NOWORK 386.89
D2S SPPROJ 272.12
HI-LO WORK 212.06
D2S TRAIN 126.91
D2S MEET 95.77
MANAGER 83.78
D2S UNLO 73.59
D2S CLEAN 65.34
D2S SYSDWN 65.13
REC-FORK 25.7
D2S_DISTRO 4.95
TWR SYSDWN 3.99
REC-REJECT 1.08
SEL-TIER 0.25
SEL-CASE 0.09
ACP CLEAN 0.02
所以我只想取D2S_发行版及以下的值,并将这些值加在10.13中,标题为“其他”。我真的不知道该怎么做。比方说,你得到了上述结果。然后可以使用子查询对结果进行分组
在本例中,我将SumOfDowntime编辑您的问题时的结果与伪代码中的实际操作进行分组,结果并不十分清楚您想要什么。有一个非常类似的问题的答案。嗯,我已经有一个显示Cum PCT的帕累托查询。我会在提供的链接中修改它和您的回复,看看我是否能得到我想要的。
SELECT tbl.Job_DescGrouped, SUM(tbl.SumOfDowntimeinsert) AS ColumnTest
FROM (
select *,
CASE WHEN SumOfDowntimeinsert > 1 THEN job_desc ELSE 'OTHERS' END AS Job_DescGrouped,
CASE WHEN SumOfDowntimeinsert > 1 THEN 0 ELSE 1 END AS OrderByColumn
from jobs) tbl
GROUP BY tbl.Job_DescGrouped
ORDER BY OrderByColumn, ColumnTest