我正在開發基於SqlLiteDataBase的Android應用程序。 當我使用查詢方法查詢數據庫時,我想按升序排列日期列。 看來ORDERBY不起作用。SqlLiteDatabase.query按日期列順序不起作用
Cursor cursor = db.query("myTable", // The table to query
dbTools.tableColumns, // The columns to return
whereClause, // The columns for the WHERE clause
null, // The values for the WHERE clause
null, // don't group the rows
null, // don't filter by row groups
"dateText" + " ASC" // The sort order
);
調試期間光標mquery字段顯示以下內容:
SQLiteQuery: SELECT dateText, <some other columns here> FROM myTable WHERE dateText >= '2015-10-01 00:00:00' AND dateText <= '2015-10-31 23:59:59' ORDER BY dateText DESC
(我刪除爲了您的方便無關列)
運行查詢後,我要檢查我是否有任何所以我打電話:
if (!cursor.moveToFirst())
然後我做了一些邏輯,每當我想移動到下一行上的光標我運行:
if (!cursor.moveToNext())
dateText列被定義爲DATETIME:
String query = "CREATE TABLE myTable (id INTEGER PRIMARY KEY AUTOINCREMENT, dateText DATETIME, <other columns here>)";
能否請指教爲什麼排序不工作?遍歷遊標上的行時,行不會被排序。 實施例: 如果我有第一,第二和第十2015年11月的行,由ASC排序將給此排序:10-> 1-> 2 通過DESC排序給出:2-> 10-> 1
你是什麼意思'不工作'?有些錯誤?或數據沒有訂購? –
我已經更新了這個問題。行未分類 – Omar