MySQL计算同一查询的派生列之间的差异

时间:2018-04-06 10:23:44

标签: mysql

如何计算同一查询的派生字段之间的差异?

这是我的SQL查询:

select Empname, sum(monthly_net) as Net,
sum(monthly_gross) as Gross, 
(Net-Gross) as diff_amount * from emp_table;

在这里,我派生了一个名为 Net Gross 的字段,我希望它们之间存在差异。是否可以计算派生字段之间的差异?

2 个答案:

答案 0 :(得分:1)

不是直接(you can't use aliases in the same query),但您可以使用

sum(monthly_net)-sum(monthly_gross) as diff_amount

答案 1 :(得分:1)

您不能在同一个查询中使用别名,并且在任何其他*必须是第一个之后,您也无法使用*所有其他列前面的*选择如下:

SELECT *,
       Empname, 
       sum(monthly_net) as Net,
       sum(monthly_gross) as Gross, 
       sum(monthly_net)-sum(monthly_gross) as diff_amount
FROM emp_table;