我在Sqlite数据库中遇到了Date或Timestamp转换。我有一个sqlite数据库,其中我有一个包含BIGINT数据的列,其中保留了某种时间戳。这些值是18位数,一些示例是634741056000000000,634766976000000000.这些值从日期时间的Windows应用程序到达数据库,如示例。下面给出了该时间戳的一些等效日期。
这就是我所知道的,我已经尝试了几种可能的转换程序,但还没有运气。任何人都可以帮我解决转换程序吗?我在iOS应用程序中使用它,所以转换过程对我来说很重要。任何帮助将受到高度赞赏。
答案 0 :(得分:1)
当我们比较一个月的长度时:
> SELECT strftime('%s', '2012-07-01') - strftime('%s', '2012-06-01'),
634766976000000000 - 634741056000000000;
2592000|25920000000000
我们看到单位是一万分之一秒。
要计算纪元,只需使用这些值与SQLite的unixepoch
值之间的差异:
> SELECT datetime(strftime('%s', '2012-06-01') - 634741056000000000 / 10000000,
'unixepoch');
0001-01-01 00:00:00