2012-03-29 43 views
0

我想通過parsed_param嵌套選擇。喜歡這個 。如何解析值嵌套選擇在mysql

select name ,ord.sq,ord.sp ,sandwich_id as parsed_param 
from sandwiches , (select sum(quantity) as sq, sum(total_price) as sp 
        from order_sandwiches 
        where sandwich_code=parsed_param) as ord 

    order by parsed_param 
+0

還是你希望你的sandwich_id被重命名爲曾經parsed_pa​​ram是什麼? order by仍然會保持sandwich_id,因爲order by是列標識符,而不是重命名的列標識符。 – Churk 2012-03-29 11:38:01

+0

-i想通過'parsed_pa​​ram'在嵌套選擇上進行迭代。我不知道是否有可能使用mysql進行遞歸迭代。 – 2012-03-29 11:48:35

回答

2

試試這個

SELECT sandwiches.name, 
    sandwiches.sandwich_id, 
    sum(order_sandwiches.quantity) as sq, 
    sum(order_sandwiches.total_price) as sp 
FROM sandwiches 
JOIN order_sandwiches ON order_sandwiches.sandwich_code = sandwiches.sandwich_id 
GROUP BY sandwiches.name, sandwiches.sandwich_id 
ORDER BY sandwiches.sandwich_id 
+0

- 出錯。錯誤1064(42000):您的SQL語法有錯誤;檢查 手冊中 對應於你的MySQL服務器版本使用 附近的 線5 – 2012-03-29 12:13:51

+0

- 音符2表描述「加入 order_sandwiches ON order_sandwiches.sandwich_code = sandwiches.sandwich_id」正確的語法。 三明治表(sandwich_id,name),order_sandwishes (quantity,total_price,sandwich_id) – 2012-03-29 12:18:18

+0

抱歉忘了包含FROM三明治,我修改了答案以反映更改 – Churk 2012-03-29 12:19:28