Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] Zliczenie nawet jeśli nie istnieje rekord
Fred1485
post
Post #1





Grupa: Zarejestrowani
Postów: 361
Pomógł: 22
Dołączył: 10.02.2015

Ostrzeżenie: (0%)
-----


Mając taką strukturę.


(IMG:http://abload.de/img/diagrambfo1k.png)

Takim zapytaniem wybiorę wszystkich klientów i zliczę ile zakupili w sumie produktów.

  1.  
  2. SELECT
  3. c.id,
  4. cd.name,
  5. cd.surname,
  6. COUNT(p.name) AS bought
  7. FROM shopping s
  8. JOIN client c ON s.client_id = c.id
  9. JOIN client_details cd ON c.id = cd.client_id
  10. JOIN product p ON s.product_id = p.id
  11. GROUP BY c.id;
  12.  


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 (IMG:style_emoticons/default/tongue.gif)

coś ala

  1.  
  2. SELECT
  3. c.id,
  4. cd.name,
  5. cd.surname,
  6. COUNT(p.name) AS bought
  7. FROM shopping s
  8. JOIN client c ON s.client_id = c.id
  9. JOIN client_details cd ON c.id = cd.client_id
  10. JOIN product p ON s.product_id = p.id
  11. WHERE p.name = 'Mąka'
  12. GROUP BY c.id;
  13.  


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ć?
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 4.10.2025 - 00:04