2017-05-02 33 views
0

我在我的SQLite數據庫中存儲了一個Time值的文本字段,但由於不相關的原因,我無法將數據類型更改爲TIME。SQLite - 返回的文本字段中的左填零

這些值以HH:MM格式存儲,我無法按時間對結果進行排序,因爲'10:00'以下的值缺少前導零。我不希望爲了相同的不相關原因而將數據存儲爲前導零。

我想添加一些東西到查詢中,如果需要可以填充缺少的字符,導致結果在收集時讀取'08:30'。我一直在搜索命令和函數詞典,但我沒有找到我需要的。

有沒有一種簡單的方法可以在查詢中執行此操作?

感謝

回答

1

,我認爲這會工作:使用Python

>>> conn.execute('''select c, case when length(c) < 5 
            then '0' || c else c end from t''').fetchall() 
[(u'10:00', u'10:00'), (u'8:00', u'08:00')] 
1
SELECT REPLACE(PRINTF('%5s', your_col), ' ', '0') FROM your_table 

PRINTF通話墊的價值與空間,直到它的5個字符

select your_col, case when length(your_col) < 5 
         then '0' || your_col else your_col end from your_table 

演示,以及 REPLACE調用將這些空格替換爲零。