在R中的数据框上应用SQL查询

时间:2015-04-20 13:34:31

标签: sql r statistics

我的数据框中有一些数据,列名为ID,START_TIME,END_TIME,VALUE。所有数据都是字符格式。我想从数据帧中获取选择性数据,以便通过对其应用SQL查询进行进一步处理。我的SQL查询是这样的:

QUERY <- "SELECT ID,START_TIME,END_TIME,VALUE FROM HISTORY WHERE START_TIME >= '2015-04-17 01:00:00' AND END_TIME <= '2015-04-17 02:00:00'"

是否可以在R?

1 个答案:

答案 0 :(得分:2)

如果你的日期是这样的字符格式,那么这个例子似乎有用(虽然你会得到不同的日期,因为我已经使用Sys.time()

> require(sqldf)
> HISTORY=data.frame(ID=1:10,START_TIME=as.character(Sys.time()+(1:10)*100000))
> sqldf("select * from HISTORY where START_TIME > '2015-04-26 10:26:01'")
  ID          START_TIME
1  5 2015-04-26 10:28:03
2  6 2015-04-27 14:14:43
3  7 2015-04-28 18:01:23
4  8 2015-04-29 21:48:03
5  9 2015-05-01 01:34:43
6 10 2015-05-02 05:21:23

根据需要使用END_TIME进行扩展。请注意,这不能完成SQL可以执行的所有操作,并且选择使用本机R日期类型可能是更好的事情...