Passing Multiple Variable Into SQLDF Statement as parameters of function
You have to explicitly add the quotes:
Example=paste0("select * from LibDB where Date_Entered
='",as.character(StartDate), "'") # notice the single quotes within
the double quotes
sqldf(Example,verbose=TRUE)
On Wed, Jul 11, 2012 at 11:16 AM, scstrein <scstrein at ncsu.edu> wrote:
Hey guys, So I'm working with a project where I manage a database within R, and I'm developing a script/function that will automatically run my queries in R depending on the date parameters passed in. The problem is that when I create variables for the dates, and use those variables in my sqldf statements, R says that there is no such column in the dataframe (which is true!). My question is: how can I pass multiple date variables into my sqldf statements? In particular, the sqldf is supposed to read the date parameter as a character string (its the only way I could get it to work). This is my code so far:
StartDate='2010-06-15' EndDate='2010-06-22'
Example=paste("select * from LibDB where Date_Entered
=",as.character(StartDate))
sqldf(Example,verbose=TRUE)
This passes the StartDate in correctly, but in a form where my particular query won't pick up the date in the database. In reality, I want it to act as the following:
Example=paste("select * from LibDB where Date_Entered ='2010-06-15'")
Eventually, I need to have statements such as:
Example=paste("select * from LibDB where Date_Entered between
'2010-06-15' and '2010-06-22')
Thanks in advance for any feedback! :) -- View this message in context: http://r.789695.n4.nabble.com/Passing-Multiple-Variable-Into-SQLDF-Statement-as-parameters-of-function-tp4636147.html Sent from the R help mailing list archive at Nabble.com.
______________________________________________ R-help at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.
Jim Holtman Data Munger Guru What is the problem that you are trying to solve? Tell me what you want to do, not how you want to do it.