sql四捨五入函數
『壹』 sql server 2005資料庫中如何對從資料庫中查出的數據結果進行四捨五入
用ROUND函數就好了﹐
比如
﹕
SELECT
ROUND(列)
FROM
表
ROUND
返回數字表達式並四捨五入為指定的長度或精度。
語法
ROUND
(
numeric_expression
,
length
[
,
function
]
)
參數
numeric_expression
精確數字或近似數字數據類型類別的表達式(bit
數據類型除外)。
length
是
numeric_expression
將要四捨五入的精度。length
必須是
tinyint、smallint
或int。當
length
為正數時,numeric_expression
四捨五入為
length
所指定的小數位數。當
length
為負數時,numeric_expression
則按
length
所指定的在小數點的左邊四捨五入。
function
是要執行的操作類型。function
必須是
tinyint、smallint
或
int。如果省略
function
或
function
的值為
0(默認),numeric_expression
將四捨五入。當指定
0
以外的值時,將截斷
numeric_expression。
『貳』 sql四捨五入取整語句
使用ROUND(X) 進行操作:返回參數X的四捨五入的一個整數。比如說:
『叄』 SQL問題,我有一列有小數點,我要想要四捨五入到整數,該怎麼修改
什麼資料庫?
MSSQL
UPDATE
A
SET
B=CAST(1.522
AS
INT)
小數會全部舍掉,四捨五入的話就用round
UPDATE
A
SET
B=round(1.522,0)
『肆』 關於sql四捨五入問題
select cast(100.581 as decimal(15,2)) --自動四捨五入
select cast(ceiling(100.581 * 100)/100 as decimal(15,2))
select cast(floor(100.581 * 10)/10 as decimal(15,1))
『伍』 sql 四捨五入問題
Round函數(四捨六入五成雙)(轉)2007-06-09 15:20Round(所在單元:Math)
功能說明:對一個實數進行四捨五入。(按照銀行家演算法)
參考實例:
var
I, j: Integer;
begin
i := Round(1.5); // i等於2
j := Round(2.5); // j等於2
//注意Round(2.53)=3
end;
在Delphi中使用Round函數得到的答案有時與我們所預期的會不太一樣:
採用的是四捨六入五留雙。即當舍或入位大於或小於五時按四捨五入來處理,而當舍或入位等於五時,就要看前面一位是什麼,根據奇進偶不進,它總是返回一個偶數值。
示例 結果
i:= Round(11.5) 12
i:= Round(10.5) 10
這種Round其實是按照銀行家演算法,統計學上一般都用這種演算法,比傳統的"四捨五入"要科學。
如果要使用傳統的"四捨五入"方法,可以使用下面演算法:
//提供者FlashDance(10040231) 15:15:58
var
D1,D2:Double;
begin
D1:=3.14159;
D2:=StrToFloat(Format('%.5f',[D1]));
end;
『陸』 sql怎樣四捨五入保留小數點後1位
select cast('8.5738' as numeric(10,1)),基本上數字只要是四捨五入都可以轉成numerice,後面2個參數,1代表數字長度,2代表小數點後的位數,你將你sql中的round去掉應該就行
『柒』 sql 中要求現實數據保留兩位小數 搜索語句
保留兩位小數就用round,這個是四捨五入的函數用法如下select
round(欄位名,2)
from
表名;這個2就是保留兩位小數了
select *
from TABLE1
where
AID
=
a.AID
你這個好像寫法不對,給你寫一個select
*
from
table1
a,table2
b
where
a.id=b.id這個代表把table1起個別名叫a表,把table2起個別名,叫b表,當且僅當兩個表的id相等的時候輸出結果這個a和b就是個起別名的作用,因為表名很長,所以用別名能比較直觀,就是這個意思
『捌』 sql語句怎麼寫「四捨五入後求和」的語句
把數據類型轉換為decimal,系統會自動四捨五入,欄位合計求和可以用sum函數,例如以下例子假設合並欄位col,只保留一位小數:
select sum(cast(col as decimal(19,1)))
from 表
『玖』 sql 語句 round 用法
ROUND
返回數字表達式並四捨五入為指定的長度或精度。
語法
ROUND ( numeric_expression , length [ , function ] )
參數
numeric_expression
精確數字或近似數字數據類型類別的表達式(bit 數據類型除外)。
length
是 numeric_expression 將要四捨五入的精度。length 必須是 tinyint、smallint 或int。當 length 為正數時,numeric_expression 四捨五入為 length 所指定的小數位數。當 length 為負數時,numeric_expression 則按 length 所指定的在小數點的左邊四捨五入。
function
是要執行的操作類型。function 必須是 tinyint、smallint 或 int。如果省略 function 或 function 的值為 0(默認),numeric_expression 將四捨五入。當指定 0 以外的值時,將截斷 numeric_expression。
返回類型
返回與 numeric_expression 相同的類型。
注釋
ROUND 始終返回一個值。如果 length 是負數且大於小數點前的數字個數,ROUND 將返回 0。
示例 結果
ROUND(748.58, -4) 0
當 length 是負數時,無論什麼數據類型,ROUND 都將返回一個四捨五入的 numeric_expression。
示例 結果
ROUND(748.58, -1) 750.00
ROUND(748.58, -2) 700.00
ROUND(748.58, -3) 1000.00
『拾』 SQL如何四捨五入
update item set sale_price = price 理解為賣價最終會等於進價了。
如果是要把賣價等於進價四捨五入,則
update item set sale_price = cast(round(price,1) as numeric(15,1))
如果不滿足您的需求,請繼續追問,在線解答。