SQ中的decimal 函式的使用以及個人理解

2021-08-31 18:12:41 字數 626 閱讀 9606

在網上搜了好幾個關於decimal()的部落格,不是特別理解,結合前人的部落格以及個人的理解,寫下這個部落格,便於自己記憶加深理解。

decimal一般用於對精度要求高的,比如與金錢相關的,用整型和浮點型都不行了,才會用到decimal,或者用於sql查詢中也可以

decimal(a,b)

a:指的是整數和小數所能存的最多的位數

b:指的是小數數字的位數,即a-b就是整數的位數

如上圖:將1.11111111轉成總位數9位,小數字是5位,得出的1.11111,因為小數字是五位,整數只有1位,所以才得出是1.111111

如上圖,總位數是5位,小數字要求4位,但是99.123只有三位,總位數要求5位,所以就造成了精度缺失,具體內部是怎麼造成,目前還不是很清楚。結果就成了9.9999.

如果decimal(5,3),則輸入的是99.123

注:cast(expr as type) 是將某種資料型別的表示式顯式轉換為另一種資料型別

SQL中的DECIMAL 函式

decimal為sql server 資料型別,屬於浮點數型別。乙個decimal型別的資料占用了2 17個位元組。decimal 資料型別decimal 變數儲存為 96 位 12 個位元組 無符號的整型形式,decimal型別消除了發生在各種浮點運算中的捨入誤差,並可以準確地表示28個小數字。d...

mysql中的decimal型別

今天除錯程式,系統丟擲這個異常 out of range value adjusted for column bodyweight 進資料庫看見這個欄位的型別是decimal 4,2 錄入三位數就出異常。decimal m d zerofill 乙個未壓縮 unpack 的浮點數字。不能無符號。行為...

python中的enumerate 函式使用方法

結合例項來理解比較好,網上找了一下這個enumerate用法,自己也記錄一下加深印象 舉例說明 具體例子 列印輸出索引與value值 列表1 print 列表1 product mac pro iphone iwatch for index,item in enumerate product pri...