MySQL查询后添加值?

时间:2014-12-06 23:44:45

标签: mysql

我创建了一个获取两个值的查询。它输出正确的值,但现在我想将这些值一起添加到名为“总成本”的列中获取一个值。如果“总成本”不是我表中的一列,这可能吗?

以下是我使用的查询:

SELECT ROUND(SUM(drugcost_cost),0) FROM drugcost UNION SELECT ROUND(SUM(operation_cost),0) FROM operation

output with code

1 个答案:

答案 0 :(得分:0)

使用子查询执行此操作:

SELECT d.dcost, o.ocost, (d.dcost + o.ocost) as totalcost
FROM (SELECT ROUND(SUM(drugcost_cost),0) as dcost FROM drugcost) d CROSS JOIN
     (SELECT ROUND(SUM(operation_cost),0) as ocost FROM operation) o;

顺便说一句,您的查询是一个很好的示例,说明为什么您应该始终使用union all ,除非您确实知道为什么要union。如果两个子查询中的值相同,那么union将删除重复项 - 并且您将只获得一行。