无法使用read.csv.sql导入日期条件下的数据

时间:2016-07-11 01:57:21

标签: sql r

环境: R

目标:从csv导入所有数据,其中“开始日期”是2013年10月1日之前

数据结构:

Trip ID Duration    Start Date  Start Station

4576    63  8/29/2013 14:13 South Van Ness at Market

4607    70  8/29/2013 14:42 San Jose City Hall

4130    71  8/29/2013 10:16 Mountain View City Hall

4251    77  8/29/2013 11:29 San Jose City Hall

enter image description here

代码:

library(sqldf)
tripData <- read.csv.sql("201402_trip_data.csv", sql = "select * from file where 'Start Date' <= '10/1/2013'",header = TRUE, eol = "\n")

问题:

R中没有警告,但结果显示只导入了11个变量名,但在tripData中没有观察到。

1 个答案:

答案 0 :(得分:0)

您的查询有问题:

select * from file where 'Start Date' <= '10/1/2013'

这告诉SQL按字典顺序将字符串'Start Date''10/1/2013'进行比较。我相信这永远不会成真,因为S字母在数字1后比较。您需要在列名称周围使用反引号而不是引号。这是您打算运行的查询:

select * from file where `Start Date` <= '10/1/2013'

> tripData <- read.csv.sql("201402_trip_data.csv", sql = "select * from file where `Start Date` <= '10/1/2013'",header = TRUE, eol = "\n")