2015-11-04 77 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