我得到 "Function not found: day at [5:84]"

I am getting "Function not found: day at [5:84]"

SELECT   field_3103,
         Sum(
         CASE
                  WHEN field_3103 >=     Date(Extract(year FROM field_3103), Extract(month FROM field_3103), 1)
                  AND      field_3103 <= Date( Extract(year FROM field_3103), Extract(month FROM field_3103), Day(Last_day(field_3103))) THEN 1
                  ELSE 0
         END) AS new_listings,
         Sum(
         CASE
                  WHEN field_3102 >=     Date(Extract(year FROM field_3102), Extract(month FROM field_3102), 1)
                  AND      field_3102 <= Date(Extract(year FROM field_3102), Extract(month FROM field_3102), Day(Last_day(field_3102))) THEN 1
                  ELSE 0
         END) AS sold_listings
FROM     winter-agility-327715.properties_dataset.final_table
GROUP BY 1

此查询导致以下错误消息:

"Function not found: day at [5:84]"

我的 SQL 中的语法错误也带有下划线,如下图所示:

如@Thorsten 和@Samuel 所述,您收到此错误是因为 BigQuery 中没有 DAY 函数。 如果你想提取日期,你可以使用以下语法:

EXTRACT(DAY FROM date_expression)

有关 BigQuery 中日期函数的更多信息,请参阅此 documentation