Google电子表格查询错误 - 列不存在

时间:2012-07-25 13:01:51

标签: google-sheets

Google Spreadsheet API的另一个问题。我正在尝试使用QUERY()函数,以便从我们的数据库中获取来自华沙的所有客户。但是Google API似乎在解析我的查询时遇到了很大问题。我已经检查了几次,一切都很好。尝试用分号,不同的撇号和列名称 - 它仍然不起作用。我在表格单元格中输入以下代码:

=QUERY(IMPORTRANGE("0ArsOaWajjzv9dEdGTUZCWFc1NnFva05uWkxETVF6Q0E"; "Kuchnia polska!A3:G40"); "select B where E contains 'Warszawa'")

并得到这样的错误:

Invalid query: Column [E] does not exist in table.

我110%确定该列存在且电子表格键正常。 ;)

2 个答案:

答案 0 :(得分:20)

如果您使用Query函数直接引用单元格矩形,则使用大写字母来引用列。但是,如果您对数组公式的输出使用Query,例如从ImportRange返回,那么您需要使用Col1Col2,.. 。引用列。因此,您的示例查询字符串需要读取:

"select Col2 where Col5 contains 'Warszawa'"

工作示例:

=Query(ImportRange("0AtEH2Kw9zfIodEQ2dFNFam9sdEFEZlVnNEV3ZEZMZEE", "data!A:G"), "select Col3, count(Col4) group by Col3 order by count(Col4) desc label count(Col4) 'count'")

我不知道为什么它不只是让你使用标题行中的名字。

答案 1 :(得分:3)

或者你可以在这种情况下尝试FILTER函数,然后你就不需要打扰SQL了。 :)

=FILTER(ImportRange("0ArsOaWajjzv9dEdGTUZCWFc1NnFva05uWkxETVF6Q0E"; "Kuchnia polska!B3:B40"); ImportRange("0ArsOaWajjzv9dEdGTUZCWFc1NnFva05uWkxETVF6Q0E"; "Kuchnia polska!e3:e40")="Warszava")

虽然我承认由于两个importRange函数而不是那么漂亮。

希望它无论如何都有帮助。