當前位置:首頁 » 編程語言 » sql中的小數

sql中的小數

發布時間: 2024-06-29 17:18:37

sql哪些數據類型可以帶小數啊

浮點數據類型

浮點數據類型用於存儲十進制小數。浮點數值的數據在SQL Server 中採用上舍入(Round up 或稱為只入不舍)方式進行存儲。所謂上舍入是指,當(且僅當)要舍入的數是一個非零數時,對其保留數字部分的最低有效位上的數值加1 ,並進行必要的進位。若一個數是上舍入數,其絕對值不會減少。如:對3.14159265358979 分別進行2 位和12位舍入,結果為3.15 和3.141592653590。

1、REAL 數據類型

REAL數據類型可精確到第7 位小數,其范圍為從-3.40E -38 到3.40E +38。 每個REAL類型的數據佔用4 個位元組的存儲空間。

2、FLOAT

FLOAT數據類型可精確到第15 位小數,其范圍為從-1.79E -308 到1.79E +308。 每個FLOAT 類型的數據佔用8 個位元組的存儲空間。 FLOAT數據類型可寫為FLOAT[ n ]的形式。n 指定FLOAT 數據的精度。n 為1到15 之間的整數值。當n 取1 到7 時,實際上是定義了一個REAL 類型的數據,系統用4 個位元組存儲它;當n 取8 到15 時,系統認為其是FLOAT 類型,用8 個位元組存儲它。

3、DECIMAL

DECIMAL數據類型可以提供小數所需要的實際存儲空間,但也有一定的限制,您可以用2 到17 個位元組來存儲從-10的38次方-1 到10的38次方-1 之間的數值。可將其寫為DECIMAL[ p [s] ]的形式,p 和s 確定了精確的比例和數位。其中p 表示可供存儲的值的總位數(不包括小數點),預設值為18; s 表示小數點後的位數,預設值為0。 例如:decimal (15 5),表示共有15 位數,其中整數10 位,小數5。 位表4-3 列出了各精確度所需的位元組數之間的關系。

4、NUMERIC

NUMERIC數據類型與DECIMAL數據類型完全相同。
注意:SQL Server 為了和前端的開發工具配合,其所支持的數據精度默認最大為28位。

② 在SQL資料庫中,設置了一個欄位的類型為money,但是money類型數據保留的是四位小數,如何設置為兩位小數

1、直接型,通過ToString()函數直接格式化。

例如把money = 12345.67 格式成 money = 12,345.67。代碼如下:

string_money=moeny.ToString("N")或者string_moeny=money.ToString("#,###.00")

2、本地化型,通過CultureInfo類,根據指定的文化進行格式化,同樣的,代碼如下:

doublemoney=12345.67;

CultrueInfoci=newCultrueInfo("zh-CH");

string_money=money.ToString("c",ci)。

③ SQL鍝浜涙暟鎹綾誨瀷鑳藉甫灝忔暟鍙堣兘璁$畻鐨(sql灝忔暟綾誨瀷)

嫻鐐規暟鎹綾誨瀷鑳藉甫灝忔暟鍙堣兘璁$畻銆傚畠鍖呮嫭REAL鏁版嵁綾誨瀷銆丗LOAT銆丏ECIMAL銆丯UMERIC

緇欏ぇ瀹剁畝鍗曞垎鏋愪竴涓:

1銆丷EAL鏁版嵁綾誨瀷REAL鏁版嵁綾誨瀷鍙綺劇『鍒扮7浣嶅皬鏁幫紝鍏惰寖鍥翠負浠-3.40E-38鍒3.40E38銆傛瘡涓猂EAL綾誨瀷鐨勬暟鎹鐨勫瓨鍌ㄧ┖闂村崰鐢4涓瀛楄妭銆

2銆丗LOATFLOAT鏁版嵁綾誨瀷鍙綺劇『鍒扮15浣嶅皬鏁幫紝鍏惰寖鍥翠負浠-1.79E-308鍒1.79E308銆傛瘡涓狥LOAT綾誨瀷鐨勬暟鎹鍗犵敤8涓瀛楄妭鐨勫瓨鍌ㄧ┖闂淬傚瓨鍌ㄧ┖闂存殏鐢8涓瀛楄妭銆

3銆丏ECIMALDECIMAL鏁版嵁綾誨瀷鍙浠ユ彁渚涘皬鏁版墍闇瑕佺殑瀹為檯瀛樺偍絀洪棿錛屼絾涔熸湁涓瀹氱殑闄愬埗錛屽彲浠ョ敤2鍒17涓瀛楄妭鏉ュ瓨鍌ㄤ粠-10鐨38嬈℃柟-1鍒10鐨38嬈℃柟-1涔嬮棿鐨勬暟鍊箋傚彲灝嗗叾鍐欎負DECIMAL[p[s]]鐨勫艦寮忥紝p鍜宻紜瀹氫簡綺劇『鐨勬瘮渚嬪拰鏁頒綅銆傚叾涓璸琛ㄧず鍙渚涘瓨鍌ㄧ殑鍊肩殑鎬諱綅鏁幫紙涓嶅寘鎷灝忔暟鐐癸級錛岀己鐪佸間負18錛泂琛ㄧず灝忔暟鐐瑰悗鐨勪綅鏁幫紝緙虹渷鍊間負0銆備緥濡傦細decimal錛155錛夛紝琛ㄧず鍏辨湁15浣嶆暟錛屽叾涓鏁存暟10浣嶏紝灝忔暟5銆備綅琛4-3鍒楀嚭浜嗗悇綺劇『搴︽墍闇鐨勫瓧鑺傛暟涔嬮棿鐨勫叧緋匯

4銆丯UMERICNUMERIC鏁版嵁綾誨瀷涓嶥ECIMAL鏁版嵁綾誨瀷浠ュ強鍏舵ā寮忎竴鏍楓

④ SQL整數轉換成小數

1、首先打開SQL Server資料庫,然後准備一個數。


(4)sql中的小數擴展閱讀


SQL數據類型有以下這些:

1、二進制數據類型。

二進制數據包括 Binary、Varbinary 和 Image

Binary 數據類型既可以是固定長度的(Binary),也可以是變長度的。

Binary[(n)] 是 n 位固定的二進制數據。其中,n 的取值范圍是從 1 到 8000。其存儲空間的大小是 n + 4 個位元組。

Varbinary[(n)] 是 n 位變長度的二進制數據。其中,n 的取值范圍是從 1 到 8000。其存儲空間的大小是 n + 4個位元組,不是n 個位元組。

2、字元數據類型。

字元數據類型包括char、varchar和text。

字元數據是由字母、符號和數字的任意組合組成的數據。

varchar是可變長度字元數據,其長度不超過8kb。char是最大長度為8kb的固定長度字元數據。超過8kb的ASCII數據可以使用文本數據類型存儲。

3、Unicode 數據類型。

Unicode數據類型包括nchar、nvarchar和ntext。

在Microsoft SQL Server中,傳統的非Unicode數據類型允許使用由特定字元集定義的字元。在安裝SQL Server期間,允許選擇字元集。

在Unicode標准中,包含由各種字元集定義的所有字元。使用Unicode數據類型佔用的空間是使用非Unicode數據類型的兩倍。

⑤ SQL語句小數變成百分數

select convert(numeric(8,2) ,

cast( (select convert(Numeric(8,2),( select COUNT(*) from 表 where 列1=1229)) /

(select count(列1) from 表))) * 100 as varchar(10) ) + '%'

註:*100 as varchar(10))+'%' (10) 變成長度是10的字元串,然後再加上%號,如果不用加%,就不用cast,直接 * 100 就可以了。

(5)sql中的小數擴展閱讀:

注意事項

一、concat函數

該函數用於字串的拼接,比如我們想把10變成10%,就可以寫成:

select concat(10,'%');

二、FLOOR(X)

將小數的小數部分去除,只留下整數部分,並且不進行四捨五入。

select FLOOR(5.5);

運行結果為:5

ROUND(X,D)函數和TRANCATE(X,D)函數

兩個函數都可以用來對小數保留指定小數位數,其中第二個參數D用來指定要保留到第幾位。差別是前者會進行四捨五入,而後者不會。

select ROUND(5.55,1);

select TRANCATE(5.55,1);

二者的運行結果分別為:5.6、5.5。

⑥ sql server 小數欄位設為哪種類型

在SQL Server中,實際上小數數值只有兩種數據類型:float和decimal,分別是近似數值和精確數值。

float 表示近似數值,存在精度損失,數據類型是 float(n),n是可選的,默認類型是float(53),佔用8bytes。雖然n的取值范圍是1-53,實際上,float 只能表示兩種類型float(53) 和 float(24),分別佔用 8Bytes 和 4Bytes。

decimal不存在精度損失,數據類型decimal(p,s) 需要分別指定小數的最大位數(p)和小數位的數量(s)。decimal 數據類型的最大精度為 38。即decimal 數據類型最多可以存儲 38位數字,所有這些數字均可位於小數點後面。decimal 數據類型存儲精確的數字表示形式,沒有近似值。

(6)sql中的小數擴展閱讀:

雙精度(double precision)數據類型等價於 float(53),real等價於float(24),numeric是 decimal的同義詞,應該避免在程序中直接使用double precision、real和numeric,而是用 float(24) 、float(53)和decimal 代替。

float是近似數值,存在精度缺失;decimal是精確數值,不存在精度損失。當數值不允許精度丟失時,使用 decimal數據類型存儲數據。在計算小數的除法時,SQL Server 內部隱式升級數據類型,根據小數數值的數據類型,就近向float(24) 或float(53)轉換。

熱點內容
我的世界189伺服器 發布:2024-07-01 19:43:27 瀏覽:249
編程W指令 發布:2024-07-01 19:19:47 瀏覽:981
蘋果怎麼設軟體密碼 發布:2024-07-01 19:19:06 瀏覽:487
冷門加密殼 發布:2024-07-01 19:18:29 瀏覽:876
安卓平板瀏覽器全屏怎麼設置 發布:2024-07-01 18:57:48 瀏覽:376
自製解壓抱枕 發布:2024-07-01 18:36:48 瀏覽:678
編程口號語 發布:2024-07-01 18:22:07 瀏覽:649
伺服器驗證怎麼抓包 發布:2024-07-01 18:22:06 瀏覽:211
編程看什麼 發布:2024-07-01 18:21:32 瀏覽:744
c語言與c的關系圖 發布:2024-07-01 18:06:08 瀏覽:100