[SQL ] 關於DECIMAL的除法

看板Database (資料庫)作者 (嗯)時間17年前 (2009/03/24 18:51), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
DB : SQL Server 2000 因為一些資料需要運算 到小數點下15位左右 想到精確度問題 所以打算用DECIMAL 但發現DECIMAL有點奇妙 DECLARE @A DECIMAL(38, 30) SET @A = 0.11111111111111111111 SELECT @A / 5 => 0.022222222222222222222000000000 DECLARE @A DECIMAL(38, 30) SET @A = 0.11111111111111111111 SELECT @A / 5.000000000000000000000 => 0.022222222 不太懂為何會有這樣的差異!? 另外 DECLARE @A DECIMAL(38,30) DECLARE @B INT SET @A = 0.11111111111111111111 SET @B= 5.0000000000000000000 SELECT @A / @B => 0.022222222222222222222000000000 DECLARE @A DECIMAL(38,30) DECLARE @B DECIMAL(38,30) SET @A = 0.11111111111111111111 SET @B= 5.0000000000000000000 SELECT @A / @B => 0..022222 這更不能理解了...XDDD 想請問有沒有人能稍微解釋一下 如果真的需要用到小數點以下15位去做運算 (包含加減乘除) 該怎麼處理比較適當? -- ◢◣ ◢◣◥████ ◢███◣ ████ ███▉█ ◢█ ◣◢ ██ ███ ◥█ ███▉█ ◢▉█ ◢██ ███ ◢██ ◢██ ███ ◥██◤ █▇▇▇◤ █▉█ █▇▇ █▇ ▉▇▇ █▉█ ██ ▉▉█▏▏◢█ ██▇◣ █▇█ ▇▇█ ██ ███ █▇█▎██ █▉▉█▏▏ rushcat -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.87.128.113
文章代碼(AID): #19oBj4L8 (Database)
文章代碼(AID): #19oBj4L8 (Database)