1 回答

TA貢獻1789條經驗 獲得超8個贊
為此你需要聚合??紤]group by向查詢添加一個子句,如下所示:
SELECT
o.*,
ROUND(SUM(orders_article_updated_quantity * orders_article_price * (1 - orders_article_rate/100)), 2) AS order_Total
FROM orders o
INNER JOIN orders_articles oa ON ao.orders_article_id_order = o.order_id
GROUP BY o.order_id
請注意,您應該在查詢中的每一列前面加上它們所屬的表的前綴 - 中的列的情況并非如此,SUM()這會產生歧義。
另一個選項是相關子查詢(這允許orders沒有任何文章):
SELECT
o.*,
(
SELECT ROUND(SUM(orders_article_updated_quantity * orders_article_price * (1 - orders_article_rate/100)), 2)
FROM orders_articles oa
WHERE ao.orders_article_id_order = o.order_id
) AS order_Total
FROM orders o
- 1 回答
- 0 關注
- 153 瀏覽
添加回答
舉報