2016-11-10 1040 views
0

試圖從兩列中取值,將它們相乘,並將結果顯示爲一個新列,全部在select語句中。以下是我到目前爲止得到的結果將兩列相乘,在select語句中顯示爲新列sql

select m.item_name, m.price, sum(od.qty) as count 
from menu as m, order_detail as od, sum(m.price * od.qty) as tsales 
where m.menuid = od.menuid 
group by m.item_name 
order by count desc 
limit 10; 

我可以得到select語句來做所有事情但是用新值顯示新列。如果沒有select語句的最後部分,它這樣做:

select statement result without extra column error message

+0

而你期望什麼呢?你錯過了'tsales'列嗎? – dahrens

+0

好吧,我只是得到一個錯誤,我不知道如何顯示新的列與其他兩列的信息 – xteetsx

+0

以及向我們顯示錯誤消息。 – RiggsFolly

回答

0

我認爲,我們正在尋找將從如下語句返回的結果:

SELECT m.item_name 
     , SUM(m.price*od.qty) AS tot_price_times_qty 
    FROM menu m 
    JOIN order_detail od 
     ON od.menuid = m.menuid 
    GROUP BY m.item_name 
    ORDER BY tot_price_times_qty DESC 
    LIMIT 10 

但是,沒有任何樣本數據或預期產出的證明,這只是一個猜測。

+0

YES!我不得不重新做一點,以正確的方式顯示結果,但你非常感謝 – xteetsx