我有两张桌子:
Orders
Orders product
我目前拥有计算订单金额的查询:
SELECT COUNT(*) as total FROM orders WHERE DATE(`created_on`) = CURDATE()
这给了我今天的订单数量
现在我想要更改此查询,因此我计算了订单,我计算了他们订购的产品数量。
order_products表是这样的:
-id
-order_id
-product_name
-product_weight
etc etc
我只对order_id感兴趣,因为它将此表链接到orders表。对于订购的每个产品,此表中添加了1行,该行链接到带有order_id的订单。
是否可以使用一个查询来选择计数,或者这是不可能的?我想我必须使用LEFT JOIN进行此操作,但我似乎无法找到它。
答案 0 :(得分:2)
您只需要在这些表之间创建内部联接并应用关系throw外键,然后您需要根据您要查找的内容添加group
SELECT COUNT(*) as total FROM orders o inner join order_product op on(op.order_id=o.order_id) WHERE DATE(`created_on`) = CURDATE() group by op.id