Sqlite时间函数显示毫秒

时间:2013-10-30 10:19:40

标签: sql sqlite select time

我使用下面的select语句,利用Sqlite的'time'功能。正在操作的字符串是2013-10-09 10:17:39.406作为示例。

select time(table.published_time) as New_Time, ...

时间函数从此字符串中删除日期,但也会删除毫秒精度。有没有办法可以修改它来删除日期但是保持毫秒?

2 个答案:

答案 0 :(得分:1)

这个怎么样: -

sqlite> select strftime('%H:%M:%f', '2013-10-09 10:17:39.406') as New_Time
   ...> ;
10:17:39.406

请参阅:http://www.sqlite.org/lang_datefunc.html

答案 1 :(得分:1)

time()的行为与the documentation中描述的相似:

  

time()函数将时间返回为HH:MM:SS。

但您可以跳过time()的来电。使用字符串值directy作为strftime()的输入。

sqlite> select strftime('%H:%M:%f', '2013-10-09 10:17:39.406');
10:17:39.406

修改

%f格式化秒分数:

sqlite> select strftime('%S - %f', '2013-10-09 10:17:39.406');
39 - 39.406

如果使用%S,则应跳过%f