SQL Server 對長度不足的字符串右側補0

        因爲在使用過程當中,發現有這個需求,而後瞭解了一下 SQL Server 的操做,故在這裏作一個記錄。express

咱們用到了 SQL Server 中的 RIGHT() 函數,RIGHT() 的函數表達式爲:bash

RIGHT(character_expression,integer_expression)複製代碼

其中,character_expression 表示字符串表達式,integer_expression 表示返回的指定長度。在這個咱們以 5 爲長度限制,進行舉例說明。函數

其中原始數據以下:spa


接下來咱們使用 RIGHT() 函數,對 sp_code 這個字段進行格式處理:3d

第一種寫法:code

RIGHT('00000' + sp_code, 5)複製代碼


第二種寫法:cdn

RIGHT('00000' + CONVERT(VARCHAR, sp_code), 5)複製代碼

說明:CONVERT() 爲 SQL Server 中的把日期轉換爲新數據類型的通用函數。這裏咱們使用blog

CONVERT(VARCHAR, sp_code)複製代碼

的語法,是將 sp_code 轉爲字符類型。字符串


第三種寫法:string

RIGHT('00000' + LTRIM(RTRIM(sp_code)), 5)複製代碼

說明:LTRIM() 和 RTRIM() 是 SQL Server 中去除數據中的空格函數


第四種寫法:

RIGHT('00000' + CASE(sp_code AS varchar), 5)複製代碼



第五種寫法:

RIGHT(replicate('0', 5) + sp_code, 5)複製代碼

說明:REPLICATE() 爲 SQL Server 中以指定的次數重複字符表達式的函數。



第六種寫法:

RIGHT(100000 + sp_code, 5)複製代碼



總結,寫法有不少種,這裏只列舉其中集中。

相關文章
相關標籤/搜索