我使用Excel并创建了2列。column1
包含DATES, column2
包含INT类型的值。我已经使用SQLite管理器将表导入为CSV。我连接到数据库,并已使用它成功的其他查询,只涉及文本。现在,我想在column2中选择与column1中显示的当前日期相对应的INT。因此,每天运行SQL查询时,它将根据新的当前日期自动更新。我用了
SELECT column2 FROM table WHERE column1 = CURRENT_DATE
但是,它返回null(空白,无),而如果我使用
SELECT column2 FROM table WHERE column1 > CURRENT_DATE
它返回rowid1的column2中的INT,但是如果我使用
SELECT column2 FROM table WHERE column1 < CURRENT_DATE
返回rowid3第2列的INT值
因此,DB正在运行;但是,问题是它不能将当前系统日期与列1中的正确值相关联。是否有可能导入CSV。到SQLite已经改变了数据类型为VARCHAR或其他东西,而不是DATE和INT?
SQLite没有DATE
数据类型
日期通常以字符串形式存储(CSV没有类型),并且为了与SQLite的内置日期函数兼容,必须采用yyyy-mm-dd
格式。
在从Excel导出之前,请确保所有日期都使用此格式。