REALデータ型のフィールドに値を挿入するストアドプロシージャの#TmpTblを作成したという問題があります。この値をNVARCHAR(200)のデータ型を持つ別のテーブルに書き込むと、元の値が変更されます。実際のデータ型をnvarcharに変換すると、元の値が変更されます
REALデータ型の値= 2122222、変換NVARCHARデータ型の値= 2122220
REALデータ型のフィールドに値を挿入するストアドプロシージャの#TmpTblを作成したという問題があります。この値をNVARCHAR(200)のデータ型を持つ別のテーブルに書き込むと、元の値が変更されます。実際のデータ型をnvarcharに変換すると、元の値が変更されます
REALデータ型の値= 2122222、変換NVARCHARデータ型の値= 2122220
使用STR
https://msdn.microsoft.com/en-us/library/ms189527.aspx
create table t (i int,x nvarchar(200))
declare @x real = 2122222
insert into t (i,x) select 1,@x
insert into t (i,x) select 2,str (@x)
select * from t order by i
+---+--------------+
| i | x |
+---+--------------+
| 1 | 2.12222e+006 |
+---+--------------+
| 2 | 2122222 |
+---+--------------+
ありがとうございました。 –
ようこそ。それはあなたのために働いたのですか? –
はい、ありがとうございました。 –
ヒント:これは、使用してデータベースの質問にタグ付けすると便利です両方適切なソフトウェア(MySQL、Oracle、DB2など)およびバージョン'sql-server-2014'です。構文と機能の相違は、しばしば答えに影響します。 – HABO