【发布时间】:2018-10-20 13:22:37
【问题描述】:
我有一个包含类似表的大型 sqlite 数据库
/* Create a table called NAMES */
BEGIN TRANSACTION;
/* Create a table called NAMES */
CREATE TABLE NAMES(Id integer PRIMARY KEY, date DATETIME CURRENT_TIMESTAMP,Name text);
/* Create few records in this table */
INSERT INTO NAMES VALUES(1,DATETIME('now'),'Tom');
INSERT INTO NAMES VALUES(2,DATETIME('now'),'Lucy');
INSERT INTO NAMES VALUES(3,DATETIME('now'),'Frank');
INSERT INTO NAMES VALUES(4,DATETIME('now'),'Jane');
INSERT INTO NAMES VALUES(5,DATETIME('now'),'Robert');
COMMIT;
我想获取今天对应的行。
SELECT * FROM NAMES WHERE date=DATE('now')
但它什么也不返回。如何获取当天对应的行?
【问题讨论】:
-
请记住 sqlite 没有专用的date types。您将时间戳存储为一种格式的字符串,并将其与使用不同格式的字符串进行比较;当然它永远不会是平等的。