【问题标题】:Google Sheets - Query Multiple Sheets That Have Different StructureGoogle 表格 - 查询具有不同结构的多个表格
【发布时间】:2021-06-05 00:42:25
【问题描述】:

寻求有关如何构造查询的帮助,该查询将处理来自多个工作表(即选项卡)的数据,但是两个工作表具有不同的数据结构。

第一个查询(如下)查询包含我所有费用的选项卡。这是按月计算的。 =query(Expense_Data, "SELECT C, SUM(Q) where T Matches 'Expense' GROUP BY C ORDER BY C desc limit 3 label SUM(Q) 'Expenses'",1)

下面的示例数据输出

Date Expenses
01/01/2021 -$1000
01/02/2021 -$1500
01/03/2021 -$1000

我正在寻求的是查询另一张表,其中包含我希望根据第一个查询返回的日期(位于 A 列中)返回的数据(位于 G 列中),然后我将计算两者之间的差异.我的问题是将两个数据集关联在一起。任何支持将不胜感激!

Date Expenses Budget Difference
01/01/2021 -$1000 -$2000 -$XXXX
01/02/2021 -$1500 -$1500 -$XXXX
01/03/2021 -$1000 -$1500 -$XXXX

【问题讨论】:

标签: arrays sum google-sheets-formula vlookup google-query-language


【解决方案1】:

尝试:

=QUERY(Expense_Input, 
 "select C,sum(Q) 
  where T matches 'Expense' 
  group by C 
  order by C desc 
  limit 3 
  label sum(Q) 'Expenses', C'Month' 
  format C'mmmm yyyy'", 1)

然后:

={"Budget"; ARRAYFORMULA(IFNA(VLOOKUP(TO_TEXT(A13:A), 
 {'Expense Lookup (Monthly)'!C:C&" "&'Expense Lookup (Monthly)'!D:D, 
 SUBSTITUTE('Expense Lookup (Monthly)'!G:G, "$", )*1}, 2, 0)))}

和:

={"Difference"; INDEX(IF(A13:A="",,C13:C-B13:B))}


更新

一口气:

=ARRAYFORMULA(QUERY({QUERY(Expense_Input, 
 "select C,sum(Q) 
  where T matches 'Expense' 
  group by C 
  order by C desc 
  limit 3 
  format C 'mmmm yyyy'", 1), IFNA(VLOOKUP(TEXT(INDEX(QUERY(Expense_Input, 
 "select C,sum(Q) 
  where T matches 'Expense' 
  group by C 
  order by C desc 
  limit 3",1),,1), "mmmm yyyy"), 
 {'Expense Lookup (Monthly)'!C:C&" "&'Expense Lookup (Monthly)'!D:D, 
 SUBSTITUTE('Expense Lookup (Monthly)'!G:G, "$", )*1}, 2, 0))}, 
 "select Col1,Col2,Col3,Col3-Col2 
  label Col1'Month',Col2'Expenses',Col3'Budget',Col3-Col2'Difference'"))

【讨论】:

  • 谢谢。有没有办法在同一个查询中实现这一点?正如我认为我们可以通过算术函数即(Col2-Col3)实现“差异”?
  • 谢谢它似乎工作。我很想知道这个 vlookup/query 组合是如何工作的。您可以与我分享任何参考资料以更详细地了解它吗? :) 再次感谢
  • @raym01 vlookup 在给定范围的第一列中查找匹配项,它可以返回给定范围内的任何列。在您的情况下,我们使用数组括号 {} 创建虚拟表/数组,并将这些公式彼此相邻放置:我们在一张纸中运行第一个查询。在它旁边,我们运行相同的查询,但我们仅使用输出查询表的第一列作为在第二张表中查找内容的基础,基本上就是这样
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-01
  • 1970-01-01
相关资源
最近更新 更多