提问者:小点点

将向量的单个元素用单引号括起来,以便在SQL服务器中处理


我正在尝试从R运行SQL服务器上的查询。我有一堆Custnum,我想连接到SQL服务器并获取这些Custnum的相应数据。我有一个Custnum的向量,它是数字的,SQL服务器中相应的数据类型是varchar。所以我需要将这个向量的各个元素括在单引号中,以便我可以运行如下查询(请注意,这个查询将使用RODBC连接从R运行):

Select Field1, Field2, Field3
from table
where custnum in paste("(", blah, ")")

其中blah看起来像:

blah <- c(1,2,3)

我的向量看起来像通常的数字R向量-c(1,2,3)。如何将其转换为看起来像c("'1','2','3'")?请注意,我想要的这个字符串将所有单独的元素都用单引号括起来(对于SQL服务器),用逗号分隔。我尝试使用toString()来整理所有证书并吐出一个字符串,但我希望每个单独的元素都用单引号括起来,用逗号分隔。

在这方面的任何帮助将不胜感激。


共1个答案

匿名用户

啊,我想我明白了:

paste("(",toString(paste("'",blah,"'", sep='')),")", sep='')