Android中的System.currentTimeMillis()数据保存在Sqlite中后的查询问题

一定要看到最后

在android中System.currentTimeMillis()获取的数据保存在sqlite后按日期查询时如果按以下写法

select id,recordtext,addTime,DATEtime(addtime, 'unixepoch') from tbname

查询的结果是这样的:

 

 查询后发现SQLITE支持的日期格式:

SQLite 支持以下五个日期和时间函数:

 

序号函数实例
1 date(timestring, modifier, modifier, ...) 以 YYYY-MM-DD 格式返回日期。
2 time(timestring, modifier, modifier, ...) 以 HH:MM:SS 格式返回时间。
3 datetime(timestring, modifier, modifier, ...) 以 YYYY-MM-DD HH:MM:SS 格式返回。
4 julianday(timestring, modifier, modifier, ...) 这将返回从格林尼治时间的公元前 4714 年 11 月 24 日正午算起的天数。
5 strftime(format, timestring, modifier, modifier, ...) 这将根据第一个参数指定的格式字符串返回格式化的日期。具体格式见下边讲解。

 这个和我们用到的无关,我们是从JAVA的System.currentTimeMillis()中得到的,经过分析上面的示例发现只要把我们的数据除以1000就可以被Sqlite正常转换了,代码如下

 

select id,addTime,DATEtime(addTime/1000, 'unixepoch') from soundrecord

执行后结果就是:

 

 运行正常!

希望能帮到朋友们!

posted @ 2020-06-16 16:25  道非常道  阅读(426)  评论(0编辑  收藏  举报