0

我正在使用连接到 BigQuery 表,dbplyr并且这些表通常按日期或时间进行分区(该列称为 _PARTITIONDATE 或 _PARTITIONTIME)。在 BigQuery 中,您可以使用 WHERE _PARTITIONDATE >“某个日期”进行过滤,以访问表的段并提高查询性能。

但是当我通过 连接到表时dbplyr,没有要过滤的分区列。这是预期的行为吗?

4

1 回答 1

0

我发现您可以使用build_sql函数 indbplyr过滤表的分区列,然后继续使用dbplyr例如编写查询:

tbl(con, "table_name") %>%
filter(!!build_sql("DATE(_PARTITIONTIME > '2021-06-21'", con = con)

只要没有dbplyr等效项,您就可以这样做。

于 2021-06-22T23:59:55.383 回答