从SQLite查询格式日期
问题描述:
我想从我的SQLite数据库拉和格式化时间戳。在我的阅读中,与PHP可用的日期格式转换相比,SQLite格式似乎非常有限。我有这个疑问从JavaScript来:从SQLite查询格式日期
SELECT strftime('%m %d, %Y', timestamp) AS saveddate
,并返回:
03 03 2009年
我试图让它返回:
月3日, 2009
有什么建议吗?
答
SQLite绝对正确的是,SQLite专注于属于数据存储层的功能,而不是属于用户界面的功能,例如格式化具有月份名称的日期等。我强烈建议你把这个作为一个非常有帮助的提示,以保持每种功能在其适当的层! - )。
如果您非常想在数据存储层中错误地使用UI功能,那么这可能会在某种程度上被阻塞,通过在C语言中编写自己的格式化函数并将它们连接到SQLite中,或者经历令人难以置信的笨拙的SQL旋转,但我无法想象任何用例都值得费心。
答
短月份名称
substr ("--JanFebMarAprMayJunJulAugSepOctNovDec", strftime ("%m", thedate) * 3, 3)
完整的月份名称
rtrim (substr ("January--February-March----April----May------June-----July-----August---SeptemberOctober--November-December", strftime ("%m", thedate) * 9 - 8, 9))
的破折号仅用于使其在页面上清晰。将它们替换为空格。
如果我的表示层是来自SQL语句输出的文本文件,该怎么办?这是一个非常基本的需求,而悲伤的SQLLite不支持开箱即用。然而,鉴于它的目标,以及它是多么精简,我可以接受这个错过的功能,它只是很臭。 – Kuberchaun 2011-11-02 17:41:41