SQLite数据时间函数

时间:2014-06-03 21:40:13

标签: sql sqlite datetime

我目前在表格的一列中有这种格式Tue Jun 03 17:17:05 +0000 2014的时间戳。我想计算特定间隔(15分钟)内发生的记录数。我试图按照Group records by time中的答案进行操作。虽然我的时间戳格式不同,但我还没有看到SQLite提供的任何支持功能来转换它。这可能在SQL中吗?

2 个答案:

答案 0 :(得分:1)

SQLite date and time functions可用于将时间字符串转换为规范格式,或转换为朱利安日数字。不幸的是,SQLite日期和时间函数只接受有限数量格式的时间字符串:

YYYY-MM-DD
YYYY-MM-DD HH:MM
YYYY-MM-DD HH:MM:SS
YYYY-MM-DD HH:MM:SS.SSS
YYYY-MM-DDTHH:MM
YYYY-MM-DDTHH:MM:SS
YYYY-MM-DDTHH:MM:SS.SSS

如果您的时间轴格式具有固定的字段宽度,则可以使用substr函数和||字符串连接运算符将其转换为SQLite可以理解的格式。您必须使用case表达式将月份名称转换为数字; here's an example

答案 1 :(得分:0)

您可以在Oracle中使用NEW_TIME将时间转换为特定时区。这是一个例子。此示例将SYSDATE从PDT转换为GMT。

SELECT NEW_TIME (SYSDATE, 'PDT', 'GMT') FROM DUAL;

thread详细说明了如何为您的时间戳添加所需的分钟数。