如何获取Sqlite中的当前时间戳? current_time,current_date,current_timestamp都返回格式化日期,而不是长日期。
sqlite> insert into events (timestamp) values (current_timestamp);
sqlite> insert into events (timestamp) values (current_date);
sqlite> insert into events (timestamp) values (current_time);
sqlite> select * from events;
1|2010-09-11 23:18:38
2|2010-09-11
3|23:18:51
我想要的是什么:
4|23234232
答案 0 :(得分:75)
docs提到了这种方法:
SELECT strftime('%s', 'now');
1284248196
这个包括小数部分:
SELECT (julianday('now') - 2440587.5) * 86400.0;
1284248196.65098
两者都代表Unix Time,即自1970年1月1日以来经过的秒数。
答案 1 :(得分:0)
select strftime('%W'),date('now'),date(),datetime(),strftime('%s', 'now');
结果
strftime('%W') - date('now') - date() - datetime() - strftime('%s', 'now')
08 - 2021-02-23 - 2021-02-23 - 2021-02-23 15:35:12- 1614094512
答案 2 :(得分:0)
出于某种原因(这无疑是我的错)Daniel 的 julianday()
组件对我来说不太合适,但是在从名为 tmstmp 的时间戳字段中进行选择时,使用以下 jankery 似乎可以解决问题:
select
strftime('%s', a.tmstmp) + strftime('%f', a.tmstmp)
as unix_time
from any_table a