首页 > 解决方案 > Google 表格 QUERY():添加额外的空白行

问题描述

我正在研究重大事件如何影响美国和澳大利亚股市,例如互联网泡沫、911、COVID 等。

使用 GoogleFinance(),我试图比较 S&P500 指数 (INDEXSP:.INX) 和 ASX All Ords 指数 (INDEXASX:XAO) 在不同时间段(例如 2000-2010 年)的每周收盘价。

在此处输入图像描述

但是,ASX All Ords 仅返回 2010-04-20 的记录,这是一个问题,因为我想将数据显示为图表。

以下是返回数据的函数之一:

=QUERY( googlefinance(E10,"all",$F7,$F8,"WEEKLY"), "SELECT Col1, Col5 LABEL Col1 'All Ords', Col5 'Value' ")

我想为 ASX 数据添加额外的空白行,以便每周日期对齐。在 2000-2010 范围的情况下,我需要添加 67 个空白行来对齐日期。

有没有办法构造查询,例如以某种方式添加 UNION 子句来实现这一点?或者有什么替代方法?

标签: sqlgoogle-sheets

解决方案


您需要使用 S&P 结果中日期的 vlookup 函数进入 ASX 结果数组。

我已经在专门为此线程创建的电子表格中列出了基础知识。

我正在谈论的公式位于名为“比较”的选项卡上的单元格 D4 中。我将日期四舍五入,以便图表更清晰。

=ARRAYFORMULA(IFERROR(VLOOKUP(B4:B,QUERY(ROUND(GOOGLEFINANCE(D3,"close","1/1/1990",TODAY(),"weekly"),{0,2}),"offset 1",0),2,TRUE)))

推荐阅读