为什么ORDER BY在Sqlite查询中不起作用 [英] Why is the ORDER BY not working in a Sqlite query

查看:423
本文介绍了为什么ORDER BY在Sqlite查询中不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在Android中创建SQLite表:

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);

查询(在KEY_DATE之前订购):

Querying (Order by KEY_DATE):

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

以上似乎无效.

在下订单之前是否必须将KEY_DATE转换为日期.

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

推荐答案

我使用现有的KEY_DATE列创建了一个新列,并将其保存为yyyy-mm-ddd格式.然后,我将查询更新为date("+KEY_FORMAT_DATE+")";,它对我有用.

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.

这篇关于为什么ORDER BY在Sqlite查询中不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆