我正在尝试按日期排序列表,但我收到错误:
String selectQuery = "SELECT * FROM " + TABLE +
"WHERE calendar < '2016-1-00' + ORDER BY calendar ASC";
(1)“&lt;”附近:语法错误
我做错了什么
答案 0 :(得分:1)
String selectQuery = "SELECT * FROM " + TABLE_ASSIGNMENTS +
" WHERE calendar < '2016-1-00' ORDER BY calendar ASC";
这是可行的答案。谢谢那些帮助过的人!
答案 1 :(得分:1)
您有两个拼写错误:
1)在TABLE连接之后添加和额外的空格
2)删除&#34; +&#34;位于日期之后的符号
您的代码应如下所示:
String selectQuery = "SELECT * FROM " + TABLE + " WHERE calendar < '2016-1-00' ORDER BY calendar ASC";
一件重要的事情: SQLite没有&#34; date&#34;或者&#34; datetime&#34;类型,因此您必须使用unix时间戳或没有符号的反向表示日期(yyyymmdd)将日期保存为整数(int)。
我建议您使用反转符号日期,因为它只需要8个字节,SQLite订单和搜索操作将更快地执行。请记住,当值小于10时,反向表示法应使用左边填充零,因此20160301(2016年3月1日)不应表示为201631。