SQLServerで数値をゼロパディング(前0埋め)の文字列で表す
SQLServerにはOracleやPostgresqlのLPADやRPADのような、文字を埋め込む関数がないようだ。
そこで、指定した文字数を右、もしくは左から抜き出す関数があるのでそれを活用する。
例えば、数値型項目numを「0001」のように長さ4で左を0埋めした文字列で表すには、以下の通り。
1 | RIGHT('0000' + convert(varchar,num), 4) |
また、文字列型項目strの右を空白で埋め、長さ10となるようにするには、以下の通り。
1 | LEFT(str + ' ', 10) |