尝试在RoR项目中使用CONVERT_TZ时出现异常:
SQLite3::SQLException: no such function: CONVERT_TZ
sqlite中是否有某些功能可以在查询中转换时区?
答案 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:43
到2015-03-05 18:03:43+03:00
根据其文档,这意味着日期格式将从YYYY-MM-DD HH:MM:SS
更改为YYYY-MM-DD HH:MM:SS[+/-]HH:MM
,这是SQLite的正确日期时间格式。
阅读SQLite关于日期函数的文档以获取任何详细信息,或者只是在评论中提问,我可以尝试进一步提供帮助。我不想在此处粘贴整个文档页面。