我想從我的SQLite數據庫拉和格式化時間戳。在我的閱讀中,與PHP可用的日期格式轉換相比,SQLite格式似乎非常有限。我有這個疑問從JavaScript來:從SQLite查詢格式日期
SELECT strftime('%m %d, %Y', timestamp) AS saveddate
,並返回:
03 03 2009年
我試圖讓它返回:
月3日, 2009
有什麼建議嗎?
我想從我的SQLite數據庫拉和格式化時間戳。在我的閱讀中,與PHP可用的日期格式轉換相比,SQLite格式似乎非常有限。我有這個疑問從JavaScript來:從SQLite查詢格式日期
SELECT strftime('%m %d, %Y', timestamp) AS saveddate
,並返回:
03 03 2009年
我試圖讓它返回:
月3日, 2009
有什麼建議嗎?
SQLite does not support month names,遺憾的是。您必須使用查找表,案例語句或表示層上的開關將其轉換爲月份名稱。
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