0

12桁のint番号を0として残し、文字で始まる「P」にしたい

例: number が 345 の場合、出力は ' P00000000345'になります。

私のコード:

Declare @a int
Set @a =8756
Select Right('P00000000000' +Cast(@a As Varchar(11)),12)

DB : SQL サーバー 2008

4

5 に答える 5

4

試す

Declare @a int
Set @a =8756
Select 'P'+Right('00000000000' +Cast(@a As Varchar(11)),11)
于 2013-08-08T08:12:46.227 に答える
2

これを試して

Declare @a int
Set @a =8756
Select 'P' + REPLACE(STR(@a, 11), SPACE(1), '0')

デモ: http://sqlfiddle.com/#!3/d41d8/18547

于 2013-08-08T08:18:10.770 に答える
2

あなたはほとんど正しいですがP、別のステップとして適用する必要があります:

Declare @a int
Set @a =8756
Select 'P' + Right('000000000000' +Cast(@a As Varchar(11)),12)
于 2013-08-08T08:12:44.330 に答える
1

変化する

Select Right('P00000000000' +Cast(@a As Varchar(11)),12)

Select 'P' + Right('00000000000' +Cast(@a As Varchar(11)),11)

SQL フィドルのデモ

于 2013-08-08T08:12:22.710 に答える