実際の値が 34.25 であっても、decimal(18,2) は decimal(6,2) より多くのストレージを使用しますか?
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 に答える