将向量的单个元素用单引号括起来,以便在SQL Server中进行处理

时间:2014-11-12 18:58:26

标签: sql-server r vector

我正在尝试从R运行SQL Server上的查询。我有一堆custnum,我想连接到SQL Server并获取这些custnum的相应数据。我有一个custnum的向量,它是数字,SQL Server中相应的数据类型是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 Server),用逗号分隔。我尝试使用toString()整理所有custnum并吐出一个字符串,但我希望每个单独的元素都用单引号括起来,用逗号分隔。

非常感谢这方面的任何帮助。

1 个答案:

答案 0 :(得分:3)

啊,我想我明白了:

paste("(",toString(paste("'",blah,"'", sep='')),")", sep='')
相关问题