Google Sheets QUERY公式无法按指定列正确分组问题求助
Google Sheets QUERY函数分组问题解决
你的核心问题出在GROUP BY子句包含了被聚合的K列——你用了max(K)来聚合K列,但又把K列放进GROUP BY里,这会导致每一个不同的K值都会单独成组,哪怕箱号(H列)相同,只要K值不一样就会拆分成多行。
修正步骤:
- 移除GROUP BY里的K列,因为K是被聚合的字段,不需要参与分组;
- 确保SELECT里所有非聚合的字段(B、H、I、L、M)都在GROUP BY中,或者对它们使用聚合函数(如果同一个箱号对应多个不同的B/I/L/M值)。
修正后的公式示例:
=QUERY('Master Sheet'!A1:N, "select B, H, I, max(K), L, M where B is not null group by B, H, I, L, M order by B label B 'Transfer #', H 'Box #', I 'Total Boxes In Transfer', M 'Shelved'")
如果同一个箱号(H)对应多个不同的Transfer #(B)或其他字段值,你需要根据业务逻辑对这些字段使用聚合函数,比如取第一个值first(B)、最大值max(B)或最小值min(B),同时调整GROUP BY只保留H和那些唯一对应的字段。比如:
=QUERY('Master Sheet'!A1:N, "select first(B), H, first(I), max(K), first(L), M where B is not null group by H, M order by first(B) label first(B) 'Transfer #', H 'Box #', first(I) 'Total Boxes In Transfer', M 'Shelved'")
内容的提问来源于stack exchange,提问作者NateM
相关产品推荐
相关产品推荐

