[R] R: Query an Access database based on a date attribute
Tudor Bodea
gtg757i at mail.gatech.edu
Tue Nov 13 15:48:35 CET 2007
Stefano,
It did work - for some reason, the date components to be used in the sqlQuery
need to be placed in between hashes (i.e., #) for them to be interpreted
correctly.
Thank you so much.
Tudor
Quoting Guazzetti Stefano <Stefano.Guazzetti at ausl.re.it>:
> It seems that Access needs that you surround the dates with a # symbol.
> You probably need something like.
>
> res <- sqlQuery(channel, "select * from test_table where market = 'atl-bos'
> and competitor = 'delta' and dd = #2007-11-20#")
> Hope this helps,
>
> Stefano
> -----Messaggio originale-----
> Da: r-help-bounces at r-project.org
> [mailto:r-help-bounces at r-project.org]Per conto di Mark Wardle
> Inviato: martedì 13 novembre 2007 11.59
> A: Tudor Bodea
> Cc: r-help at stat.math.ethz.ch
> Oggetto: Re: [R] Query an Access database based on a date attribute
>
>
> On 12/11/2007, Tudor Bodea <gtg757i at mail.gatech.edu> wrote:
> > Dear useRs,
> >
> > I would like to query an Access database through R based on a date
> attribute
> > but, unfortunately, I fail to do so. For example, the table test_table of
> the
> > test.mdb looks like:
> >
> > ID cd market competitor dd price
> > 1 1 2007-11-20 atl-bos delta 2007-11-20 210
> > 2 2 2007-11-20 atl-bos delta 2007-11-21 190
> > 3 3 2007-11-20 atl-bos delta 2007-11-22 180
> > 4 4 2007-11-20 atl-bos united 2007-11-20 205
> > 5 5 2007-11-20 atl-bos united 2007-11-21 195
> > 6 6 2007-11-20 atl-bos united 2007-11-22 175
> > 7 7 2007-11-20 atl-sfa delta 2007-11-20 350
> > 8 8 2007-11-20 atl-sfa delta 2007-11-21 320
> > 9 9 2007-11-20 atl-sfa delta 2007-11-22 300
> > 10 10 2007-11-20 atl-sfa aa 2007-11-20 340
> > 11 11 2007-11-20 atl-sfa aa 2007-11-21 320
> > 12 12 2007-11-20 atl-sfa aa 2007-11-22 300
> >
> > In this context, I try to get all the records for which market is atl-bos,
> > competitor is delta and dd is 2007-11-20 (first record above). To do this I
> used
> >
> > ># channel <- odbcConnectAccess("test.mdb")
> > >res <- sqlQuery(channel, "select * from test_table where market =
> 'atl-bos'
> > and competitor = 'delta' and dd = 2007-11-20")
> >
> > but the result seems to be incorrect.
>
>
> Dear Tudor,
>
> Try running your query in Microsoft Access/Query first. Once it works,
> then move to R/RODBC...
>
> I don't use MS Access routinely in this way, but presumably there is a
> problem with your SQL.
>
> Best wishes,
>
> Mark
> --
> Dr. Mark Wardle
> Specialist registrar, Neurology
> Cardiff, UK
>
> ______________________________________________
> 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.
>
>
--
Tudor Dan Bodea
Georgia Institute of Technology
School of Civil and Environmental Engineering
Web: http://www.prism.gatech.edu/~gtg757i
More information about the R-help
mailing list