R 版本:2.12.2 / 操作系统:Windows XP
我需要查询和操作的数据存储在一个 SPSS .sav 文件(大小 ~ 112MB)中,我对 SPSS 语法有非常基本的了解。我对 R 更满意(并且通常更喜欢它用于数据操作和分析),因此我将 SPSS 文件保存为制表符分隔的文件(大小 ~ 85MB),并尝试使用 RODBC 包中的功能对其进行查询。
使用 Windows 控制面板上管理工具组中的“数据源 (ODBC)”应用程序,我使用 Microsoft 文本驱动程序设置了一个数据库(Windows 文件夹),其中包含表(制表符分隔的文件)。
当前感兴趣的表有一个“日期”字段(称为“日期时间”),其中日期格式为“%Y/%m/%d”。当我第一次尝试使用该字段的条件查询数据库时,我得到了一个观察值为零的结果集。因此,我将“日期时间”更改为数据类型“字符”并再次尝试查询(无济于事)。
我能够成功查询数据库,即
sqlQuery(channel = cn, query = "SELECT * FROM large_table.txt", as.is = TRUE, stringsAsFactors = FALSE, max = 20)
返回结果。以下查询返回零观测结果集(我已验证在其“日期时间”字段中至少有一条值为“2011/04/01”的记录)。
sqlQuery(channel = cn, query = "SELECT DateTime FROM large_table.txt WHERE DateTime = {d '2011-04-01'}", as.is = TRUE, stringsAsFactors = FALSE)
sqlQuery(channel = cn, query = "SELECT DateTime FROM large_table.txt WHERE DateTime = '2011/04/01'", as.is = TRUE, stringsAsFactors = FALSE)
谁能告诉我为什么结果集没有观察结果?
非常感谢任何改进我的数据库连接或查询的建议。我更喜欢使用 RODBC 包而不是另一个数据库查询包,但如果有必要我愿意尝试一些新的东西。