我試圖使用dplyr訪問/操縱Google Bigquerry中的表視圖。但是,當我嘗試使用dplyr函數(select,filter等)聚合表時,它給了我這個錯誤:「錯誤:無法在傳統SQL查詢中引用SQL視圖。」下面的代碼說明了我正在嘗試做什麼。無法在使用R的傳統SQL查詢中引用SQL視圖dplyr
#source the table
pd = src_bigquery(project, dataset) %>%
tbl(table)
#get a aggregated view of the table that is filtered on a specific date
pdSelect = pd %>%
select(id, date) %>%
filter(date =="2017-03-15") %>%
collect()
有沒有辦法在使用dplyr時不使用遺留SQL?例如,在Google Bigquery Web UI中,它說:「默認情況下,BigQuery使用舊版SQL運行查詢。取消選中此項可以使用BigQuery的更新SQL方言運行查詢,並提高標準符合性。」當我在該環境中工作時,我通常只是取消選擇它,因此它會停止使用傳統SQL。
感謝您的幫助!
它看起來像有人創建了這個[代碼](http://stackoverflow.com/questions/38278705/standard-sql-in-bigrquery),可能會解決這個問題。這是代碼'devtools :: install_github(「backlin/bigrquery」,ref ='feature/useLegacySqlOption')'應該這樣做。但是,它還沒有被添加到最新的CRAN版本的bigrquery中。我也不確定它會與dplyr一起使用。 – Kevin
如果你確實找到了一些可行的方法,請發佈一個答案,以便其他用戶也能找到解決方案:) –
這已[自修](https://github.com/rstats-db/ bigrquery/issues/147)和#standardSQL [現在應該在工作](https://cloud.google.com/bigquery/docs/reference/standard-sql/enabling-standard-sql)。 – Jordan