我希望使用SQLite strftime()
或任何其他函数生成完全相同的值,如java中的System.currentTimeMillis()函数。有可能吗?
SELECT strftime('%s','now');
生成当前时间但不考虑毫秒而是秒。我想精确到毫秒。
编辑基于Axarydax答案
SELECT strftime('%s%f','now');
返回129491124808.428
返回08.428
的%f我可以将其转换为129491124808
编辑2
ROUND(strftime('%s%f','now'))
返回129491124808.0我最后不想要.0
答案 0 :(得分:3)
根据this documentation,格式化字符串%f打印小数秒SS.SSS。
答案 1 :(得分:0)
SELECT CAST(strftime('%s%f','now') as INTEGER);
答案 2 :(得分:0)
以秒为单位的时间(纪元)
strftime('%s','now')
当前秒数+毫秒
strftime('%f','now')
当前秒数
strftime('%S','now')
因此,如果您只想要毫秒,您就可以这样做:
strftime('%S','now') - strftime('%f','now')
现在将其添加到以秒为单位的时间中,您将得到以小数表示的毫秒数
strftime('%s','now') + strftime('%f','now') - strftime('%S', 'now')
现在将其乘以1000,就可以得到当前时间(以毫秒为单位)
CAST((strftime('%s','now') + strftime('%f','now') - strftime('%S', 'now'))*1000 AS INTEGER)