0

これは私のSQLクエリです

DECLARE @Amount int
SELECT @Amount = COALESCE(@Amount+ ', ', '') + Amount FROM Hotel

このクエリの実行中に、次のようなエラーが発生します。

"Conversion failed when converting the varchar value ', ' to data type int"
4

1 に答える 1

7

数値を文字列に明示的にキャストする必要があります。そうしないと、文字列から数値への暗黙的なキャストが試行されます。

また、変数が正しいデータ型であることを宣言します。

 DECLARE @Amount varchar(max)
 SELECT @Amount = COALESCE(@Amount+ ', ', '') + CAST(Amount AS VARCHAR(11))
 FROM Hotel

XML PATH2008年と同じように、これも確認することをお勧めします。

于 2012-07-16T09:02:38.640 に答える