SHOPS
+----+------------+
| id | shop_name |
+----+------------+
ORDERBOOKINGS
+-----+---------+-------------+------------+
| id | shop_id | grand_total | created_at |
+-----+---------+-------------+------------+
我希望得到像這樣的表:MySQL的左用(沒有行)連接條件上右表
+------------+--------------+--------------+
| shop_name | total_orders | total_amount |
+------------+--------------+--------------+
的情況是,我有日期過濾器指定之間只返回訂單總額日期。我希望它返回所有商店(如果在這些日期之間沒有一些商店的訂單,那麼它應該將total_orders作爲0返回)。
注意:一些商店可能甚至沒有訂單表中的條目。
我曾嘗試以下,但它無法從商店返回表中的所有行:
SELECT COUNT(orderbookings.id),
SUM(orderbookings.grand_total),
shops.shop_name
FROM `orderbookings`
LEFT JOIN shops
on orderbookings.shop_id = shops.id
where orderbookings.created_at BETWEEN "2015-10-22 17:02:02" AND "2017-03-07 17:02:02"
GROUP BY shops.id
任何想法,我怎麼能做到這一點?
謝謝。
已經嘗試過。仍然只返回在訂單表中有條目的商店。離開所有其他商店。 –
@ nikhil.malik更新了我的答案,請再次檢查。 – Blank
現在工作。感謝名單! –