MS SQL 教學 
剛剛有個 pig 寫了個補 0 的 SQL 問我怎麼寫不出來

主要當然是他沒把數字轉字串所以 SQL 很雞婆會自動轉回數字
其次是他的技巧是 先判斷數字的長度 然後再不斷用 case-when 補字串 '000...'
換句話說 如果最大可能補 10 個 0 他的 SQL 就要寫 10 組 case-when

經過本大師的指導 只要以下這行就搞定了...

substring('0000000000', 1, 10 - len(a)) + a

所以啊... 沒有 java 想弄個補 0 其實也不難喔!!!

感謝 juevampire 大大補充,引用各資料庫之 function 語法如下:

-- SQL Server:  
select replicate('0', (10-len('123')))+'123'

-- Oracle:
SELECT LPad('123',10,'0') FROM dual

-- DB2:
values char(repeat('0',10-length('123'))||'123',10)


arrow
arrow
    全站熱搜
    創作者介紹
    創作者 藍色小惡魔 的頭像
    藍色小惡魔

    藍色小惡魔 - 舒活札記

    藍色小惡魔 發表在 痞客邦 留言(0) 人氣()