Oracle 数据库中没有名为 “SUMIF” 的函数,但你可以使用 “CASE” 语句和 “SUM” 函数组合实现类似的功能
SELECT SUM(CASE WHEN condition THEN column_to_sum END) as sumif
FROM table_name;
这里是一个具体的例子。假设我们有一个名为 “employees” 的表格,包含以下列:employee_id, salary 和 department_id。如果我们想计算部门 ID 为 1 的所有员工的薪水总和,可以使用以下查询:
SELECT SUM(CASE WHEN department_id = 1 THEN salary END) as sumif
FROM employees;
在这个例子中,当 department_id 等于 1 时,我们将 salary 添加到总和中。如果不满足条件,则不添加(即保持为 NULL)。最后,SUM 函数将添加所有满足条件的值。