+-
mysql – 如何在一个查询中获取特定记录的总和和所有记录的总和?
我有桌子(emp):

emp Table

我想获得第一列

>部门没有

第二栏

>名称以“A”开头的各部门员工的工资总额

和第三栏

>该部门所有员工的总薪资

我能够获得第一列和第二列但无法获得具有相同查询的Thiird列:

SELECT DeptNo, SUM(Salary) AS 'Name Contains A', SUM(Salary) AS 'Total Salary'
FROM emp
WHERE Ename LIKE 'A%' 
GROUP BY DeptNo

任何建议我该怎么做?

最佳答案
如果您的DBMS支持CASE,您可以执行以下操作:

select 
  deptno, 
  sum(case when ename like 'A%' then salary else 0 end) as ASalary,
  sum(salary) as AllSalaries
from 
  emp
group by 
  deptno 

这产生了

deptno  ASalary AllSalaries 
------  ------- -----------
10       300    500
12       100    100
14         0    500
15       400    700
点击查看更多相关文章

转载注明原文:mysql – 如何在一个查询中获取特定记录的总和和所有记录的总和? - 乐贴网