Sql 通过关系集运算符计算的工资和佣金总额

Sql 通过关系集运算符计算的工资和佣金总额,sql,oracle-sqldeveloper,Sql,Oracle Sqldeveloper,员工(emp_编号、emp_名称、emp_名称、emp_工资、emp_通信、职务) 使用关系集运算符 --编写一个sql查询,计算所有员工的工资总额 --你需要加上薪水和佣金 --请注意,有些员工没有佣金(这里的佣金为空) --你一定需要工会 请帮我找到答案 不确定为什么需要联合来执行此操作,请尝试此操作 select sum(ifnull(emp_salary,0)+ifnull(emp_comm,0)) As Total from yourtable 如果您需要UNION回答,请尝试此选项

员工(emp_编号、emp_名称、emp_名称、emp_工资、emp_通信、职务)

使用关系集运算符

--编写一个sql查询,计算所有员工的工资总额

--你需要加上薪水和佣金

--请注意,有些员工没有佣金(这里的佣金为空)

--你一定需要工会


请帮我找到答案

不确定为什么需要
联合
来执行此操作,请尝试此操作

select sum(ifnull(emp_salary,0)+ifnull(emp_comm,0)) As Total
from yourtable
如果您需要
UNION
回答,请尝试此选项

SELECT SUM(salary) 
from
(
select sum(emp_salary) As salary
from yourtable
WHERE emp_salary IS NOT NULL
UNION ALL
select sum(emp_comm) 
from yourtable
WHERE emp_comm IS NOT NULL
)

你应该更好地解释一下你想要什么,给我们看一个你的数据的样本,以及你想要什么作为答案。工会版本使用
,其中emp_salary不为NULL
,而不是
ifnull
,这两个语句可能更快。。因为这是一个虚构的表,所以可能没有什么区别,但值得一提。@jnevil-同意并更新了它