我正在尝试使用dplyr从数据库(PostgreSQL)中获取数据进行查询,这是我正在尝试实现的目标。
例如,我在CSV文件中有data1,其中包含列c1和c2,我将c1和c2合并为一个组合。我想通过组合数据库中的field(临时)然后通过组合过滤从数据库中获取数据。 如果你们能帮助我,我将不胜感激。
#Example Code
myRedshift <- src_postgres('xxxxx',
host = 'xxxxxxxxxxxxxxxxxx.redshift.amazonaws.com',
port = 5439,
user = "xxxx",
password = "xxxxxxx")
data <- tbl(myRedshift, "datasets1")
data1<-read.csv("csv1.csv",stringsAsFactors = FALSE)
data1$combination<-paste0(data1$c1,data1$c2)
temp<-data%>% filter(paste0(dc1,dc2) %in% !! pull(data1,combination))%>% select(dc1,dc2,dc3)
PulledData <-setDF(as.data.table(temp))
我期望过滤出的数据,但是它抛出以下错误:
Error in postgresqlExecStatement(conn, statement, ...) :
RS-DBI driver: (could not Retrieve the result : ERROR: function concat_ws("unknown", character varying, character varying) does not exist
HINT: No function matches the given name and argument types. You may need to add explicit type casts.