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