如何在 Google 表格中使用 QUERY 功能

探索 Google 表格中的 QUERY 函数

在 Google 表格中处理数据时,QUERY 函数是一个强大的工具。它引入了类似数据库的查询功能,使您能够以各种格式查找和筛选信息。本文将引导您了解如何有效地使用它。

理解 QUERY 函数

如果您熟悉 SQL,那么掌握 QUERY 函数将相对容易。它的语法类似于 SQL,为 Google 表格带来了数据库查询的强大功能。

QUERY 函数的基本格式是 =QUERY(数据, 查询, [标题])。其中,“数据”指的是单元格范围(例如,“A2:D12”或“A:D”),“查询”是您的搜索条件。可选的“标题”参数用于指定数据范围顶部的标题行数。例如,如果标题跨越两行,例如 A1 中的“First”和 A2 中的“Name”,则指定此参数会使 QUERY 将前两行视为组合标题。

让我们看一个示例。假设在 Google 表格中,名为“员工列表”的工作表包含员工信息,包括姓名、员工 ID、出生日期以及是否参加过强制性培训课程。

在另一个工作表中,我们可以使用 QUERY 函数提取未参加培训的员工列表。此列表将包含员工 ID、姓名以及培训状态。

要实现此目的,您可以使用公式 =QUERY('员工列表'!A2:E12, "SELECT A, B, C, E WHERE E = '否'")。这将查询“员工列表”工作表中 A2 到 E12 范围内的信息。

与 SQL 查询类似,QUERY 函数使用 SELECT 语句选择要显示的列,并使用 WHERE 子句定义搜索条件。此示例返回 A、B、C 和 E 列的数据,仅包含 E 列(“参加培训”)值为“否”的行。

如结果所示,最初列表中有四名员工未参加培训。QUERY 函数提取了这些信息,并在单独的列表中显示了他们的姓名和 ID。

上述示例使用了特定的数据范围。为了允许您持续添加新员工,您可以更改公式以查询 A 到 E 列中的所有数据。这样,每当您添加新员工或更新培训状态时,QUERY 公式都会自动更新。

修改后的公式为 =QUERY('员工列表'!A2:E, "SELECT A, B, C, E WHERE E = '否'")。此公式会忽略 A1 单元格中最初的“员工”标题。

如果我们在原始列表中添加一位新的未参加培训的员工(例如,Christine Smith),QUERY 公式也会更新,并显示新员工的信息。

高级 QUERY 公式

QUERY 函数非常灵活,允许您使用逻辑运算符(如 ANDOR)以及其他 Google 表格函数(如 COUNT)来优化查询。您还可以使用比较运算符(大于、小于等)来查找特定范围的值。

使用比较运算符

您可以使用比较运算符来细化和筛选数据。例如,在“员工列表”表中添加一个额外的列 (F) 来表示每个员工获得的奖项数量。

我们可以使用 QUERY 函数搜索至少获得过一个奖项的所有员工。公式如下:=QUERY('员工列表'!A2:F12, "SELECT A, B, C, D, E, F WHERE F > 0")

此公式使用大于比较运算符 (>) 来查找 F 列中值大于零的行。

结果显示,八名员工至少获得过一个奖项。在 11 名员工中,有 3 人从未获奖。

使用 AND 和 OR

逻辑运算符 ANDOR 允许您在单个查询中组合多个条件。例如,我们可以列出 1980 年至 1989 年之间出生的员工。

这包括使用比较运算符,例如大于等于 (>=) 和小于等于 (<=)。公式如下: =QUERY('员工列表'!A2:E12, "SELECT A, B, C, D, E WHERE D >= DATE '1980-1-1' and D <= DATE '1989-12-31'")

结果显示,有三名员工符合此条件:出生于 1980 年、1986 年和 1983 年的员工。

我们也可以使用 OR 来产生类似的结果。例如,我们可以排除所有出生于 1980 年代的员工: =QUERY('员工列表'!A2:E12, "SELECT A, B, C, D, E WHERE D <= DATE '1979-12-31' or D >= DATE '1990-01-01'")

在最初的 10 名员工中,有 3 名出生于 1980 年代。结果显示了其余的 7 名员工,他们都是在排除的日期之前或之后出生的。

使用 COUNT

除了搜索和返回数据之外,还可以将 QUERY 函数与其他函数(如 COUNT)结合使用来处理数据。假设我们要统计参加过和未参加过强制性培训课程的员工人数。

公式如下: =QUERY('员工列表'!A2:E12, "SELECT E, COUNT(E) group by E")

针对 E 列(“参加培训”),QUERY 函数使用 COUNT 来计算每个值的出现次数(“是”或“否”)。在我们的列表中,有六名员工已完成培训,四名尚未完成。

您可以轻松修改此公式,并将其与 SUM 等其他 Google 表格函数结合使用。