2015-09-07 83 views
1

我有一個表在我的表像這樣添加零到左側的一個領域,串聯甲骨文

time   ID   d h m  names 
00:08:04  M23456  1 12 0  Jhon 
6 15:31:18  M23678  0 6 0  Robert 
00:02:11  M1234  4 2 0  Smith 
4 14:35:03  M46612  10 5 0  Roger 
03:45:05  M34562 null null null David 

所以,我試圖創建一個查詢什麼拼接領域的「d」(日),」 h'(小時)和'm'(分鐘),並且以相同的時間格式進行變換,如果是< 10並且在該日期的字段'd'中有一個空格,則向左側添加零,

類似於

time   ID   d h m  names newfield 
00:08:04  M23456  1 12 0  Jhon 1 12:00:00 
6 15:31:18  M23678  0 6 0  Robert 0 06:00:00 
00:02:11  M1234  4 2 0  Smith 4 02:00:00 
4 14:35:03  M46612  10 5 0  Roger 10 05:00:00 

any s uggestions

回答

3

一種方法是使用to_char()

select to_char(d, '99') || ' ' || to_char(h, '00') || ':' || to_char(m, '00') || ':00' 
+0

感謝戈登這就是找工作,只是一個律問題,如果我需要在這樣0 00 TE格式添加或刪除空格:00:00〜0 00: 00:00在連接(||)中? – Dorian

+0

沒關係修剪()的作品謝謝 – Dorian

+0

如果你不想使用空格,你不需要使用trim(),只需將格式設置爲'to_char(h,'fm00')'。 –