使用 sqldf 包查询返回 0 行
Query returning 0 rows with sqldf package
我正在尝试使用 sqldf
包从我的数据框中检索一些行,但尽管数据存在,但查询返回 0 行。
str(DATA)
'data.frame': 51500 obs. of 5 variables:
$ MaxBullProb : Factor w/ 100 levels "CX000096 w02c05s02@CL.CC_10",..: 1 2 3 4 5 6 7 8 9 10 ...
$ systemid : int 49 49 49 49 49 49 49 49 49 49 ...
$ periodicityid : int 37 48 58 43 52 45 4 56 80 40 ...
$ rptday : Date, format: "2014-11-03" "2014-11-03" "2014-11-03" "2014-11-03" ...
$ dailynetprofit: int -620 -2000 -470 -2250 -1830 -1590 750 685 -315 -555 ...
我运行的查询是:
QUERY<-"SELECT rptday,dailynetprofit from DATA WHERE rptday > '2014-11-03'"
QUERY_RES<-sqldf(QUERY)
QUERY_RES
[1] rptday dailynetprofit
<0 rows> (or 0-length row.names)
我不确定为什么查询不起作用。
"Date"
class 列作为自大纪元以来的天数传输到 SQLite,所以试试这个。参见 ?fn
。
library(sqldf)
compareDate <- as.Date("2014-11-03")
QUERY <- "SELECT rptday, dailynetprofit from DATA WHERE rptday > $compareDate"
fn$sqldf(QUERY)
对于下面注释中的一行测试输入,给出:
rptday dailynetprofit
1 2014-11-04 -620
注意: 可复制形式的测试输入是(下次请像
这个):
DATA <- data.frame(MaxBullProb = "CX000096 w02c05s02@CL.CC_10",
systemid = 49,
periodicityid = 37,
rptday = as.Date("2014-11-04"),
dailynetprofit = -620)
我正在尝试使用 sqldf
包从我的数据框中检索一些行,但尽管数据存在,但查询返回 0 行。
str(DATA)
'data.frame': 51500 obs. of 5 variables:
$ MaxBullProb : Factor w/ 100 levels "CX000096 w02c05s02@CL.CC_10",..: 1 2 3 4 5 6 7 8 9 10 ...
$ systemid : int 49 49 49 49 49 49 49 49 49 49 ...
$ periodicityid : int 37 48 58 43 52 45 4 56 80 40 ...
$ rptday : Date, format: "2014-11-03" "2014-11-03" "2014-11-03" "2014-11-03" ...
$ dailynetprofit: int -620 -2000 -470 -2250 -1830 -1590 750 685 -315 -555 ...
我运行的查询是:
QUERY<-"SELECT rptday,dailynetprofit from DATA WHERE rptday > '2014-11-03'"
QUERY_RES<-sqldf(QUERY)
QUERY_RES
[1] rptday dailynetprofit
<0 rows> (or 0-length row.names)
我不确定为什么查询不起作用。
"Date"
class 列作为自大纪元以来的天数传输到 SQLite,所以试试这个。参见 ?fn
。
library(sqldf)
compareDate <- as.Date("2014-11-03")
QUERY <- "SELECT rptday, dailynetprofit from DATA WHERE rptday > $compareDate"
fn$sqldf(QUERY)
对于下面注释中的一行测试输入,给出:
rptday dailynetprofit
1 2014-11-04 -620
注意: 可复制形式的测试输入是(下次请像 这个):
DATA <- data.frame(MaxBullProb = "CX000096 w02c05s02@CL.CC_10",
systemid = 49,
periodicityid = 37,
rptday = as.Date("2014-11-04"),
dailynetprofit = -620)