[英]How to use substring and charindex in google query language
我有一个包含几列的谷歌电子表格:
A:日期 B:字符串 C:数字 ... G:字符串(可以为空) H:字符串(可以为空)
我想要一张小桌子,里面有以下内容:
获取表中 C 的总和,其中行是 G 的值(它的子字符串,因为它们被配置为:CATEGORY:ITEM,我只需要按 CATEGORY 分组)并且列是 monts
到目前为止,我只有部分查询解决方案(例如按月分组(toDate(A))等) - 我似乎无法使用子字符串和字符索引,也无法进行字符串操作以删除类别后的项目部分也不将它们可视化为结果行中的第一行......
编辑:只是为了澄清一下:我需要为每一行更改 G 中的值,以便我可以按更改后的值进行分组。 我知道可以使用日期(在我的示例中 -> 按月分组(toDate(A)) 使我可以访问 A 列中的每个值,因此每个单独的月份的结果都正确分组)。 但是好像字符串操作是不允许的?
我如何为初学者做到这一点。
谢谢
根据所需的输出,您可以在工作表2上尝试一下:
=ArrayFormula(query({day(Sheet1!A2:A10)&text(month(Sheet1!A2:A10), " (mmm)"), Sheet1!B2:F10, regexextract(Sheet1!G2:G10, "(.+):")}, "select Col7, sum(Col3) group by Col7 pivot Col1"))
看看是否能到达某个地方?
或者,如果您更喜欢开放式范围:
=ArrayFormula(query({day(Sheet1!A2:A)&text(month(Sheet1!A2:A), " (mmm)"), Sheet1!B2:F, iferror(regexextract(Sheet1!G2:G, "(.+):"))}, "select Col7, sum(Col3) where Col7 <>'' group by Col7 pivot Col1"))
一直在寻找类似的解决方案:-)
以防万一你想要一个替代解决方案......这可以根据我的工作表 H 使用 A 到 F 列中的数据进行处理
=transpose(split(textjoin("|",1,transpose({H!A1:F100})),"|"))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.