MASUMEH MASUMEH - 26 days ago 7
R Question

pass R variable to a sql statement in R

Is there any way to pass a defined variable in R to the SQL statement within the sqldf package?

i have to run the code below and I passed the 'v' variable to sql select statement as '$v'

for (i in 1:50){
v <- i+ 450
temp <- sqldf("select count(V1) from file_new where V1='$v' ")
}


Although it runs, it returns wrong result. [The result should be 1000 but this code returns 0]. Hence, I think it doesn't pass the variable value. correctly!

Answer

If v is an integer then you don't want to enclose the $v with single quotes - that makes it a string value. Try without the single quotes.

temp <- fn$sqldf("select count(V1) from file_new where V1=$v ")