我在使用 SQlite 创建的表中有日期字段。现在,当我试图对这些日期进行排序时,我向我展示了错误的答案。我使用“2001 年 1 月 1 日”这种格式来存储日期。如何按日期降序检索。我有如下价值观:
2013 年 6 月 24 日
2013 年 6 月 26 日
2012 年 6 月 13 日
2013 年 6 月 13 日
2013 年 6 月 9 日
先谢谢了。
请参阅以下链接,sqlite 没有日期数据类型,因此您无法像在其他数据库中那样直接处理日期
您不能使用 Java 包装器“ContentValues”来使用 datetime 函数。
您可以使用 :
SQLiteDatabase.execSQL,因此您可以输入原始 SQL 查询。
mDb.execSQL("INSERT INTO "+DATABASE_TABLE+" VALUES (null, datetime()) ");
或 java 日期时间功能:
// set the format to sql date time
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = new Date();
ContentValues initialValues = new ContentValues();
initialValues.put("date_created", dateFormat.format(date));
long rowId = mDb.insert(DATABASE_TABLE, null, initialValues);
谢谢。