sqlite3有模拟MySQL的CONVERT_TZ功能吗?

时间:2015-03-05 08:20:01

标签: sqlite

尝试在RoR项目中使用CONVERT_TZ时出现异常:

SQLite3::SQLException: no such function: CONVERT_TZ

sqlite中是否有某些功能可以在查询中转换时区?

1 个答案:

答案 0 :(得分:1)

要从UTC+0转换为UTC+3

SELECT datetime(columnName, '+3 hour') || '+03:00' AS myDate FROM tableName;

说明:

datetime(columnName, '+3 hour')

上面是小时的翻译,它只是告诉SQLite在初始日期增加3个小时。这还不够,因为它只修改日期,而没有真正告知时区已经改变,所以我们可以通过将'+03:00'附加到最终日期字符串来手动完成。

进行以下从2015-03-05 15:03:432015-03-05 18:03:43+03:00

的转换

根据其文档,这意味着日期格式将从YYYY-MM-DD HH:MM:SS更改为YYYY-MM-DD HH:MM:SS[+/-]HH:MM,这是SQLite的正确日期时间格式。

阅读SQLite关于日期函数的文档以获取任何详细信息,或者只是在评论中提问,我可以尝试进一步提供帮助。我不想在此处粘贴整个文档页面。