Google Sheet SQL WHERE CLAUSE语法

时间:2018-05-12 07:44:47

标签: sql google-sheets subquery

我正在尝试编写嵌套查询:

Query(get all compensation for an Assignment where Assignment ID = query(Get Assignment ID for <Person Name>))

来源分配和补偿在两个不同的工作表上。

作为Google的SQL版本的新手,我正在逐步尝试。示例文件为here

A14包含获取作业ID的查询。

=query(Demographics!A1:AA316,"select B where I LIKE 'Christopher Lee' ORDER BY B LIMIT 1 ")

A18 - 使用来自单元格A15的分配ID获取所有补偿的查询(A14上的查询结果)

=QUERY(Compensation!A2:F109012,"select sum(B) where year(C) = year(now()) - 4 and A = "&A15&" ")

在A21上 - 我试图用来自A14的查询替换对单元格A15的引用。

QUERY(Compensation!A2:F109012,"select sum(B) where year(C) = year(now()) - 4 and A = "&query(Demographics!A1:AA316,"select B where I LIKE 'Christopher Lee' ORDER BY B LIMIT 1 ")&" ")

我收到错误消息:

  

错误无法解析Function QUERY参数2的查询字符串:   NO_COLUMN:Assignment_ID

是否与我在A14查询中获得的列标题有关?

非常感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

我认为我们以前经历过这个。请尝试:

=QUERY(Compensation!A2:F109012,"select sum(B) where year(C) = year(now()) - 4 and A = "&query(Demographics!A1:AA316,"select B where I LIKE 'Christopher Lee' ORDER BY B LIMIT 1 label(B) '' ")&" ")

也许只有Google知道完全为什么,但QUERY的本质是格式化文本或数字很重要(不能在单个字段中混合)。使用标题,您在顶部有一个文本条目 - 在数字格式记录之上。