微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

按查询分组在android 2.1中不起作用

我在本地数据库表“session”中保存日期时间(以毫秒为单位)
我的问题是这个代码是在Android 2.2及以上版本但是Android 2.2的爱情版本
它没有工作意味着它给了我表中的所有行
但是我在Android 2.2中运行相同的代码,它正在工作,并给我不同的值

当我在sqlite Manager中运行以下查询时,它给了我适当的不同值

创建表语法

"CREATE TABLE  session  ( " +
        "recid  INTEGER PRIMARY KEY NOT NULL ,  " +
        "starttime  TEXT)";

查询数据库获取数据

Cursor c = mDb.rawQuery("select distinct (starttime / (24 * 60 * 60 * 1000)) ,
starttime from session group by (starttime / (24 * 60 * 60 * 1000))", null);

数据库表会话中的值::

1   1319084700198
4   1319084100642
5   1319092500940
6   1319092500769
7   1319100300864
8   1319107500002
9   1319107500673
10  1319168700236
11  1319169000223
12  1319178000717
13  1319178000902
14  1319185800738
15  1319192100137
16  1319256000842
17  1319256000985
18  1319192100156
19  1319084700210
20  1319085000660
21  1319086500972
22  1319088000927
23  1319092500687
24  1319092500027
25  1319092500178
26  1319092500702
27  1319092500878
28  1319092500114

解决方法:

我认为问题的根源在于在sql中混合字符串和算术.
考虑将数据库类型从TEXT更改为INTEGER.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐