欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

sqlserver四舍五入使用round函數(shù)及cast和convert函數(shù)

 更新時間:2015年11月03日 11:54:01   作者:garfieldzf  
大家在遇到sqlserver四舍五入除了用round函數(shù)還有沒有其他方法呢?下面小編給大家介紹使用cast和convert函數(shù),感興趣的朋友一起學習吧

引言

      今天和測試溝通一個百分比計算方式時遇到一個問題, 我在存儲過程里用到了強轉CAST(32.678 AS DECIMAL(5,1))  我認為該方式只會保留一位小數(shù),我給測試的回復是我并沒有用到四舍五入函數(shù),數(shù)據(jù)也沒有四舍五入,而測試說他們自己驗證后覺的數(shù)據(jù)是經過四舍五入了的。 想到這里于是我再試了試存儲過程的每個計算點,才發(fā)現(xiàn)了這個問題。

ROUND

     那么用到四舍五入并且保留小數(shù)點時我們肯定會首選ROUND函數(shù),  如果字段的數(shù)據(jù)類型是decimal(18,10)時那么四舍五入后還會有很多0出現(xiàn)。

CAST和CONVERT

    其實我使用強轉時并沒有打算四舍五入結果,只是單純?yōu)榱说玫椒衔乙蟮臄?shù)據(jù),今天才發(fā)現(xiàn)這兩個強轉也會四舍五入結果,也就是說下面三個語句將會返回相同的結果值

select ROUND(32.678,1)  --32.700
select CAST(32.678 as DECIMAL(5,1)) --32.7
select convert(NUMERIC(5,1),32.678) --32.7

下面抽個空給大家介紹SQL的四舍五入ROUND函數(shù)

SQL四舍五入2007/11/01 16:35問題1:

SELECT CAST('123.456' as decimal) 

將會得到 123(小數(shù)點后面的將會被省略掉)。

如果希望得到小數(shù)點后面的兩位。

則需要把上面的改為

SELECT CAST('123.456' as decimal(38, 2)) ===>123.46

自動四舍五入了!

問題2:

SELECT ROUND(123.75633, 2, 1), ROUND(123.75633, 2)

上面的SQL得到的2個值是不一樣的,前一個是:123.75000,后一個是:123.76000。

因為前者在進行四舍五入之前,小數(shù)點后已經被截取,保留了2位。

而后者則沒有被截取,四舍五入時自然就會得到123.76000

ROUND

返回數(shù)字表達式并四舍五入為指定的長度或精度。

語法

ROUND ( numeric_e-xpression , length [ , function ] )

參數(shù)

numeric_e-xpression

精確數(shù)字或近似數(shù)字數(shù)據(jù)類型類別的表達式(bit 數(shù)據(jù)類型除外)。

length

是 numeric_e-xpression 將要四舍五入的精度。length 必須是 tinyint、smallint 或int。當 length 為正數(shù)時,numeric_e-xpression 四舍五入為 length 所指定的小數(shù)位數(shù)。當 length 為負數(shù)時,numeric_e-xpression 則按 length 所指定的在小數(shù)點的左邊四舍五入。

function

是要執(zhí)行的操作類型。function 必須是 tinyint、smallint 或 int。如果省略 function 或 function 的值為 0(默認),numeric_e-xpression 將四舍五入。當指定 0 以外的值時,將截斷 numeric_e-xpression。

返回類型

返回與 numeric_e-xpression 相同的類型。

注釋

ROUND 始終返回一個值。如果 length 是負數(shù)且大于小數(shù)點前的數(shù)字個數(shù),ROUND 將返回 0。

示例 結果

ROUND(748.58, -4) 0

當 length 是負數(shù)時,無論什么數(shù)據(jù)類型,ROUND 都將返回一個四舍五入的 numeric_e-xpression。

示例 結果

ROUND(748.58, -1) 750.00
ROUND(748.58, -2) 700.00
ROUND(748.58, -3) 1000.00

示例

A. 使用 ROUND 和估計值

下例顯示兩個表達式,說明使用 ROUND 函數(shù)且最后一個數(shù)字始終是估計值。

Select ROUND(123.9994, 3), ROUND(123.9995, 3) 
GO

下面是結果集:

----------- -----------
123.9990    124.0000 

B. 使用 ROUND 和四舍五入的近似值

下例顯示四舍五入和近似值。

語句 結果

Select ROUND(123.4545, 2)
123.4500
Select ROUND(123.45, -2)
100.00

C. 使用 ROUND 截斷

下例使用兩個 Select 語句說明四舍五入和截斷之間的區(qū)別。第一個語句四舍五入結果。第二個語句截斷結果。

語句 結果

Select ROUND(150.75, 0)
151.00
Select ROUND(150.75, 0, 1)
150.00

相關文章

  • MSSQL基本語法及實例操作語句

    MSSQL基本語法及實例操作語句

    這篇文章介紹了MSSQL的基本語法及實例操作語句,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-04-04
  • SQL恢復master數(shù)據(jù)庫方法 只有mdf文件的數(shù)據(jù)庫如何恢復

    SQL恢復master數(shù)據(jù)庫方法 只有mdf文件的數(shù)據(jù)庫如何恢復

    這篇文章主要為大家詳細介紹了SQL恢復master數(shù)據(jù)庫方法,還分析了只有mdf文件的數(shù)據(jù)庫如何進行恢復的情況,也就是沒有l(wèi)og文件的數(shù)據(jù)庫文件恢復方法,感興趣的小伙伴們可以參考一下
    2016-05-05
  • SQL Server的IP不能連接問題解決

    SQL Server的IP不能連接問題解決

    這篇文章主要給大家介紹了關于SQL Server的IP不能連接問題的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用SQL Server具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-07-07
  • SQL Server數(shù)據(jù)庫安裝時常見問題解決方案集錦

    SQL Server數(shù)據(jù)庫安裝時常見問題解決方案集錦

    對于初學者來說,安裝SQL Server數(shù)據(jù)庫時,常常會有一些問題的出現(xiàn),這篇文章就是針對安裝時常見問題總結的解決方案,需要的朋友可以參考下
    2015-08-08
  • SQL Server的復制功能

    SQL Server的復制功能

    SQL Server的復制功能微軟本身主要是用來發(fā)布及共享報表的。
    2009-05-05
  • MSSQL 2000 使用幫助(sql server簡明教程)

    MSSQL 2000 使用幫助(sql server簡明教程)

    這篇文章主要介紹了MSSQL 2000 使用幫助(sql server簡明教程),需要的朋友可以參考下
    2017-04-04
  • 數(shù)據(jù)庫表的查詢操作(實驗二)

    數(shù)據(jù)庫表的查詢操作(實驗二)

    這篇文章主要介紹了表的查詢操作,包括單表查詢、多表連接及查詢、嵌套查詢、集合查詢等,需要的朋友可以參考下
    2015-08-08
  • SQLSERVER中得到執(zhí)行計劃的兩種方式

    SQLSERVER中得到執(zhí)行計劃的兩種方式

    得到執(zhí)行計劃的方式有兩種:一種是在指令的前面打開一些開關,讓執(zhí)行計劃信息打在結果集里,這種方法比較適合在一個測試環(huán)境里對單個語句調優(yōu);另一種方法是使用SQL Trace里的事件跟蹤來跟蹤語句的執(zhí)行計劃,感興趣的朋友可以了解下
    2013-01-01
  • SQL?Server?2019自定義安裝教程

    SQL?Server?2019自定義安裝教程

    這篇文章介紹了SQL?Server?2019的安裝教程,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-04-04
  • SQLServer 數(shù)據(jù)庫故障修復頂級技巧之一

    SQLServer 數(shù)據(jù)庫故障修復頂級技巧之一

    SQL Server 2005 和 2008 有幾個關于高可用性的選項,如日志傳輸、副本和數(shù)據(jù)庫鏡像。
    2010-04-04

最新評論