[R] Passing Multiple Variable Into SQLDF Statement as parameters of function

Gabor Grothendieck ggrothendieck at gmail.com
Wed Jul 11 23:59:28 CEST 2012


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')
>

See example 5 on the sqldf home page;
http://code.google.com/p/sqldf/#Example_5._Insert_Variables
-- 
Statistics & Software Consulting
GKX Group, GKX Associates Inc.
tel: 1-877-GKX-GROUP
email: ggrothendieck at gmail.com



More information about the R-help mailing list