sum 函數(shù)在 oracle 中計(jì)算一系列值的總和。語法:sum(expression),其中 expression 為數(shù)值表達(dá)式或列名。它可以對一列中的所有行值進(jìn)行求和,或通過 where 子句對滿足特定條件的行進(jìn)行求和。sum 函數(shù)返回 number 類型的值,即使參數(shù)為負(fù)數(shù),也會返回正數(shù)。它支持高級用法,如與 group by 和 having 子句結(jié)合使用,以及作為窗口函數(shù)使用。
Oracle 中 SUM 函數(shù)
定義
SUM 函數(shù)在 Oracle 中用于計(jì)算一組值或表達(dá)式的總和。
語法
<code>SUM(expression)</code>
登錄后復(fù)制
其中:
expression:要計(jì)算總和的數(shù)值表達(dá)式或列名。
用法
SUM 函數(shù)可以對一列中的所有行值進(jìn)行求和。
也可以在 WHERE 子句中使用 SUM 函數(shù),對滿足特定條件的行進(jìn)行求和。
SUM 函數(shù)的返回值為數(shù)據(jù)類型 NUMBER。
示例
<code>-- 計(jì)算所有員工的薪水總和 SELECT SUM(salary) FROM employees; -- 計(jì)算部門 ID 為 10 的所有員工的薪水總和 SELECT SUM(salary) FROM employees WHERE department_id = 10; -- 計(jì)算大于 5000 美元的薪水總和 SELECT SUM(salary) FROM employees WHERE salary > 5000;</code>
登錄后復(fù)制
注意事項(xiàng)
如果 SUM 函數(shù)的參數(shù)為 NULL,則返回值為 NULL。
如果 SUM 函數(shù)的參數(shù)為負(fù)數(shù),則返回值仍為正數(shù)。
SUM 函數(shù)可以同時應(yīng)用于數(shù)字和字符串。如果要對字符串進(jìn)行求和,則字符串必須用單引號括起來。
高級用法
除了基本用法之外,SUM 函數(shù)還支持一些高級用法:
GROUP BY 子句:SUM 函數(shù)可與 GROUP BY 子句一起使用,對分組數(shù)據(jù)進(jìn)行求和。
HAVING 子句:SUM 函數(shù)可與 HAVING 子句一起使用,對滿足特定條件的分組進(jìn)行求和。
窗口函數(shù):SUM 函數(shù)可作為窗口函數(shù)使用,計(jì)算窗口內(nèi)的值總和。






