SQL Server 2008 R2 で最初に作成されたときに最大 3 文字の長さの文字列があります。
先頭にゼロを追加したいので、元の値が「1」の場合、新しい値は「001」になります。または、元の値が「23」の場合、新しい値は「023」になります。または、元の値が「124」の場合、新しい値は元の値と同じになります。
SQL Server 2008 R2 を使用しています。T-SQL を使用してこれを実行するにはどうすればよいですか?
ベストアンサー1
フィールドがすでに文字列である場合は、これが機能します
SELECT RIGHT('000'+ISNULL(field,''),3)
ヌルを「000」として表示したい場合
それは整数かもしれません - その場合は
SELECT RIGHT('000'+CAST(field AS VARCHAR(3)),3)
質問で要求されているように、この回答は長さ <= 3 の場合にのみ機能します。それよりも大きな値が必要な場合は、文字列定数と 2 つの整数定数を必要な幅に変更する必要があります。例:
'0000' and VARCHAR(4)),4