[SQL]欄位內資料前面補0的問題

  • 23252
  • 0
  • 2010-08-02

欄位內資料前面補0的問題

這是在藍色小舖遇到的問題,其實算是個老問題了,問題如下

shour型態是int,若資料小於10時,如何在前面加一個0呢?
例如「9」變「09」

在網路上看到很多種作法,以這種最為常見,假設欄位的長度限制在兩個字元,那可以直接在前面補兩個0,接著取最右邊的兩個字元,例如

shour

 1        001           01

 2     =>    002 =>     02

 10        010           10

因此就可以達到前面補0的效果

以下為SQL語法

select right('00'+cast(shour as varchar),2)   from test123  

 

參考

http://www.blueshop.com.tw/board/show.asp?fumcde=FUM20041006152735ZFS&subcde=BRD20090218113907527#BRD20090218121416AGI