【发布时间】:2017-01-19 11:06:23
【问题描述】:
我有 2 个这样的向量
SS <- "Length','Breadth'"
BB <- "Area','Volume','Circumference'"
我正在尝试以这种方式在我的 sql 查询中使用这两个向量
conn <- odbcDriverConnect(connection = "Driver={Oracle in instantclient11_1};DbQ=zzzzz;UId=xxxxxx;Pwd=yyyyyy;")
sql<-paste0( "SELECT * FROM Measurements
WHERE Unit IN ('",SS,"')
AND target IN ('",BB,"')")
df <- sqlQuery(conn,sql)
这给了我一个错误提示“引用的字符串没有正确终止” 解决问题后,我意识到最后一个单引号是导致它的原因。我不确定如何删除它。
我的想要的输出是
SS <- "Length','Breadth"
BB <- "Area','Volume','Circumference"
有人可以就此提供一些指导吗?
【问题讨论】:
-
SS<-sub('\'$', '', SS)应该可以工作。 -
你可以使用
sub("'$", "", SS) -
谢谢。两种解决方案都有效。
-
如果您使用准备好的语句,您可以使代码更易于阅读和更安全。