round函數求平均人數?
數據庫中round的用法求平均值的用法如下:
示例:
round(123.456,2)
------------
123.47
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。
round(123.456, 0)
-------
123.000
SELECT FLOOR(123.45), FLOOR(-123.45), FLOOR($123.45)
--------- --------- -----------
123 -124 123.0000
SELECT CEILING(123.45), CEILING(-123.45), CEILING(0.0)
以下為結果集:
--------- --------- -------------------------
124 -123 0
///////////////////////////////////////////////////////////
ORACLE的TRUNC包羅萬象,DB2的TRUNC只是給數字用的。但象DATE等都能實現。比如,DATE(A TIMESTAMP FIELD)會把TIMESTAMP后面的都拿掉,成了一個PURE DATE,就象ORACLE的TRUNC(SYSDATE)會把后面的時間拿掉一樣。
SQL> select trunc(2345.6789,2) from dual;
TRUNC(2345.6789,2)
------------------
2345.67
/home/db2inst > db2 -v "select decimal(2345.6789,10,2) from sysibm.sysdummy1"
select decimal(2345.6789,10,2) from sysibm.sysdummy1
1
------------
2345.67
1 record(s) selected.