相关疑难解决方法(0)

将R变量传递给RODBC的sqlQuery?

有没有办法将R中定义的变量传递给RODBC包中的sqlQuery函数?

具体来说,我需要将这样的变量传递给标量/表值函数,存储过程和/或SELECT语句的WHERE子句.

例如,让:

x <- 1 ## user-defined
Run Code Online (Sandbox Code Playgroud)

然后,

example <- sqlQuery(myDB,"SELECT * FROM dbo.my_table_fn (x)")
Run Code Online (Sandbox Code Playgroud)

要么...

example2 <- sqlQuery(myDB,"SELECT * FROM dbo.some_random_table AS foo WHERE foo.ID = x")
Run Code Online (Sandbox Code Playgroud)

要么...

example3 <- sqlQuery(myDB,"EXEC dbo.my_stored_proc (x)")
Run Code Online (Sandbox Code Playgroud)

显然,这些都不起作用,但我认为有一些能够实现这种功能的东西.

sql r rodbc

19
推荐指数
1
解决办法
3万
查看次数

向RMySQL getQuery添加动态值

是否可以将值dbGetQuery从RMySQL包传递到查询中。

例如,如果我在字符向量中有一组值:

df <- c('a','b','c')
Run Code Online (Sandbox Code Playgroud)

我想遍历这些值以从数据库中为每个值提取特定值。

library(RMySQL)    
res <- dbGetQuery(con, "SELECT max(ID) FROM table WHERE columna='df[2]'")
Run Code Online (Sandbox Code Playgroud)

当我尝试将引用添加到值时,出现错误。想知道是否可以从查询中的R对象添加值。

r rmysql

5
推荐指数
1
解决办法
7111
查看次数

R中的动态"字符串"

简单的问题,但找不到答案.

代替:

Df <- sqlQuery(ch, "SELECT * FROM tblTest WHERE Id=25")
Run Code Online (Sandbox Code Playgroud)

我想要一个更有活力的代码片段.就像是:

Id <- 25
Df <- sqlQuery(ch, c("SELECT * FROM tblTest WHERE Id=", Id))
Run Code Online (Sandbox Code Playgroud)

但这不正确.

sql r rodbc

3
推荐指数
1
解决办法
2591
查看次数

标签 统计

r ×3

rodbc ×2

sql ×2

rmysql ×1