QUERY returns 不完整的结果集

QUERY returns incomplete result set

我在电子表格中使用以下公式:

=query(importrange("https://docs.google.com/spreadsheets/...?usp=sharing","Gmap List!A:G"), "select Col1,Col2,Col3,Col4,Col5,Col6,Col7 where Col7 = 'Deer Valley'",1)

它产生以下结果:

这就是奥秘。这些单元格应该在两个单元格中都有邮政编码 85029

上述 IMPORTRANGE 的简单使用在查询引用的两个单元格中显示数字 85029

知道这是什么原因吗?

源电子表格生成显示为空的单元格的内容与其中包含数字的单元格完全相同。

这个问题可以用更好的主题标题来描述。有点像 "Query Search returns incomplete resultset." 但是,既然我已经修复了它,那么在这一点上就没关系了。

我不知道为什么结果集不完整,但这里至少是问题的一部分,以及我为解决它所做的工作。

结果集中的某些 单元格是空的,这些单元格源自包含 85029S 形式的单元格(例如 Members!F3),5 位数字后跟一个单个阿尔法。源单元格包含公式,例如 =Left(Members!F3,5),它产生 85029,但结果集不完整。这是通过将公式更改为 =value(Left(Members!F3,5)) 来解决的。为什么会这样,我不知道。

以上是对正在发生的事情的明确简化。并非所有不完整的结果集都来自“5 位数字后跟一个字母”的形式。但是,所有不完整的运行集 似乎 来自具有类似于 =indirect("Zip Corrections!C" & match(F3,'Zip Corrections'!B:B ,0)), 修复适用于所有条件。

如果有人看到这个并想深入研究,我有理由相信他们会想要查看显示问题的实际电子表格。这个,因为隐私问题不能分享。另外,我并不热衷于制作一个示例电子表格来显示问题,因为我现在已经解决了这个问题,而且这可能需要做更多的工作。

这是我目前能做的最好的了。

戴夫

可能的解决方案是使用“=”代替 'contains':

=query(importrange("https://docs.google.com/spreadsheets/...?usp=sharing","Gmap List!A:G"), "select Col1,Col2,Col3,Col4,Col5,Col6,Col7 where Col7 contains 'Deer Valley'",1)

我还发现导入范围内的空单元格会导致问题;用零填充它们解决了问题。