Si8 Si8 - 1 month ago 10
Android Question

Why is the ORDER BY not working in a Sqlite query

Sqlite table creation in Android:

// Contacts table name
private static final String TABLE_CHAL = "CD";

// Contacts Table Columns names
private static final String KEY_ID = "id";
private static final String KEY_CHAL = "chal";
private static final String KEY_DATE = "date";

String CREATE_CONTACTS_TABLE = "CREATE TABLE " + TABLE_CHAL + "("
+ KEY_ID + " INTEGER PRIMARY KEY," + KEY_CHAL + " TEXT,"
+ KEY_DATE + " TEXT)";
db.execSQL(CREATE_CONTACTS_TABLE);


Querying (Order by KEY_DATE):

Cursor cursor = db.rawQuery("SELECT * FROM " + TABLE_CHAL + " ORDER BY [" + KEY_DATE + "] ASC", null);


The above doesn't seem to be working.

Do I have to convert the
KEY_DATE
into date before doing the order.

Si8 Si8
Answer

I created a new column with the existing KEY_DATE column and saved it in a yyyy-mm-ddd format. Then I updated my query to date("+KEY_FORMAT_DATE+")"; and it worked for me.

Comments