我正在尝试将两张桌子连在一起并获得外键的数量...... 对不起,但我真的不怎么解释自己,所以让我演示一下:
对于订单,我有1个表''orders',其中包含以下字段:
id, f_name, l_name, credit_card, ETC.
然后,我在订单中有一个'orders_details'表,如下所示:
id, order_id, product_id, qty
现在,我想运行一个连接2个表的查询,在订单表中每行获得1行,并使用一列告诉我每个订单中有多少产品。
有人知道如何实现这个目标吗?
P.S。我还希望能够获得订单的所有'数量'的总和(我不想为每个订单运行单独的查询)。
答案 0 :(得分:10)
SELECT o.id, o.f_name, o.l_name, COUNT(od.id), COALESCE(SUM(od.qty), 0)
FROM orders o
LEFT JOIN order_details od ON o.id = od.order_id
GROUP BY o.id, o.f_name, o.l_name