这是从数据库中某个日期之后选择值的首选/最快方式:
SELECT name, creationDate FROM sometable WHERE date(creationDate) >= date('_date_in_sqlite_format_')
其中creationDate
是DATETIME DEFAULT CURRENT_TIMESTAMP
类型
例如,_date_in_sqlite_format_
为'2007-01-01 10:00:00'
。
有没有更好的方法可以更快地帮助sqlite引擎处理数据?
问题是理论上的。我知道查询没有参数化和/或遵循更优化的编程约定。
答案 0 :(得分:0)
date()
函数返回格式为yyyy-mm-dd
的值。
如果与具有与列值相同格式的值进行比较,则可以直接进行比较,这样可以使用索引进行优化:
... WHERE creationDate >= '2008-01-01 00:00:00'