2014-12-06 40 views
-1

我已經創建了一個查詢來獲取兩個值。它輸出正確的值,但現在我想將這些值一起添加到名爲「總成本」的列中獲取一個值。如果「總成本」不是我的表中的列,這可能嗎?在MySQL查詢後添加值?

這裏是我使用的查詢:

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

output with code

回答

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將刪除重複項 - 並且您將只獲得一行。

+0

#1054 - '字段列表'中的未知列'o.cost' – user3411002 2014-12-06 23:46:55

+0

@ user3411002。 。 。錯字固定。 – 2014-12-06 23:47:23

+0

這正是我想要的!謝謝,我現在看到爲什麼要使用UNION ALL,它更有意義,但交叉連接更適合這一點 – user3411002 2014-12-06 23:48:31