2015-11-04 78 views
0

我有一个SQLite查询这样的搜索:SQLite的查询语法错误 - (比比日期时间SQLite中)

c = db.rawQuery("SELECT Task.* FROM Task where Task.CreationDate >= '" + strStartDate + "' ORDER BY Task._id ASC", null); 

,但我有这样的错误:

SQLiteLog(4733):(1 )在“>”附近:语法错误

问题是什么?我该如何写这个查询? CreationDate的类型是TEXT,并且strStartDate类似于'2012-04-05'

+0

尝试用这种http://www.techonthenet.com/sqlite/in.php –

+1

邮政完整异常消息 – laalto

回答

1

我用这个解决我的问题:

c = db.rawQuery("SELECT Task.* FROM Task where 
     strftime('%s',Task.CreationDate) >= strftime('%s','" + strStartDate + "00:00:00 ') ORDER BY Task._id ASC", null); 
-1

取决于Task.CreatioDate和变量strStartDate的内容是什么。 的值是否与YYYY-MM-DD一样?

+0

类型CreationDate的是文本,并strStartDate就像'2012-04-05' – Roya

+0

CreationDate中的存储值也是'2012-04-05'? –

+0

是的,它们的格式相同,实际上它们是DateTime,但是是String和TEXT。 – Roya