
Takim zapytaniem wybiorę wszystkich klientów i zliczę ile zakupili w sumie produktów.
SELECT c.id, cd.name, cd.surname, COUNT(p.name) AS bought FROM shopping s JOIN client c ON s.client_id = c.id JOIN client_details cd ON c.id = cd.client_id JOIN product p ON s.product_id = p.id GROUP BY c.id;
Pytanie jest pewnie banalne, ale czy wykorzystując złączenia mogę wyświetlić klientów oraz liczbę zakupionych produktów, ale danego typu, np chleb czy mąka

coś ala
SELECT c.id, cd.name, cd.surname, COUNT(p.name) AS bought FROM shopping s JOIN client c ON s.client_id = c.id JOIN client_details cd ON c.id = cd.client_id JOIN product p ON s.product_id = p.id WHERE p.name = 'Mąka' GROUP BY c.id;
Takie coś działa tylko wyświetli ilość zakupionych produktów jeśli klient kupił chociaż 1 sztukę. Chciałbym żeby pojawili się wszyscy klienci, a ci co nie kupili to po prostu żeby widniało 0. Samymi złączeniami da się to zrobić?