0

実際の値が 34.25 であっても、decimal(18,2) は decimal(6,2) より多くのストレージを使用しますか?

4

1 に答える 1

2

必要なストレージは、テーブルで定義した精度とスケールによって定義されます。

typeについては、MSDN のドキュメントをdecimal参照してください。

あなたdecimal(18, 2)の場合、その列に格納されている値に関係なく、9 バイトを使用します。

では、 5 バイトdecimal(6, 2)を使用することになります。

Enterprise (または Developer) SKU の SQL Server 2008 以降にはvardecimal、10 進数値の格納を最適化できるフラグもあります。詳しくは、SQL Server ストレージ エンジン チームのブログをご覧ください。

于 2012-08-21T10:47:15.660 に答える