Google 工作表查询 'where' 条件在尝试按日期 select 时返回空输出

Google Sheets QUERY 'where' condition returning empty output when trying to select by date

我正在学习 Google Sheet 和 functions/formulas,并且 运行 遇到了 QUERY 函数的问题。我有两个单独的 sheet,我正试图将 rows/columns 从一个 sheet 拉到另一个。 Sheet B 是我要从中提取数据的地方。 Sheet B 有 5 列,A 到 E。向此 sheet 添加和删除行,因此查询的行数会有所不同。我想提取 E 列等于今天日期的所有行。这是我正在尝试的代码:

=query('SheetB'!A5:E100, "SELECT A,B,D,E where E = '" &TODAY()& "'")

E 列的格式如下:MM/DD/YY

这个returns“#N/A”,或者"Query completed with an empty output"

如果我 运行 上面的代码没有 where 条件,它 returns 数据符合预期。我不知道为什么,或者问题是什么。任何指导将不胜感激。

这是最简单的方法:

=query('SheetB'!A5:E100, "SELECT * where E = toDate(now())")

查询使用了非常具体的日期格式,因为不同地区的格式差异很大。如果你有特定的日期,下面是你会使用的内容。

=query('SheetB'!A5:E100, "SELECT A,B,D,E where E = date '"&TEXT(TODAY(),"yyyy-mm-dd")&"'")

请注意,您需要在 'yyyy-mm-dd' 格式之前写日期。

https://developers.google.com/chart/interactive/docs/querylanguage

如果 E 列是有效日期,它将是:

=QUERY({SheetB!A5:B100, SheetB!D5:E100},  
 "where Col4 = date '"&TEXT(TODAY(), "yyyy-mm-dd")&"'", 0)

或:

=QUERY('SheetB'!A5:E100, 
 "select A,B,D,E
  where E = "&DATEVALUE(TODAY()), 0)