Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> NVL w MySQLu jak to zrobic, chce miec ZERO gdy nie ma wartosci.
mysz0n
post
Post #1





Grupa: Zarejestrowani
Postów: 78
Pomógł: 1
Dołączył: 16.08.2006
Skąd: szy-ły

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


witam mam takie pytanie do bazy

  1. SELECT k.id_statusu, count(k.id_statusu), s.id_statusu, s.nazwa_statusu
  2. FROM klienci k, statusy s
  3. WHERE k.id_statusu = s.id_statusu
  4. GROUP BY k.id_statusu


działa spoko, problem w tym, że statusów mam 5, a on wyświetla tylko 2 (ponieważ na chwile obecną tylko 2 są używane).
jak już w zapytaniu zrobić coś takiego, IF COUNT IS NULL to count(k.id_statusu) = 0
cos identycznego jak NVL w oraclu, czytalem cos o CASE - ale nie umiem zastosować :/
?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
dr_bonzo
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


Pobierz statusy i counta i dolacz (LEFT JOIN) klientow i group po id statusu:

Lekko zmodyfikowany Kod @kitol'a powinien dzialac

  1. SELECT s.id_statusu, s.nazwa_statusu, count(k.id_statusu)
  2. FROM statusy s
  3. LEFT JOIN klienci k ON k.id_statusu = s.id_statusu
  4. GROUP BY s.id_statusu


to da ci 0 dla statusow dla ktorych brak klienta
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: 11.10.2025 - 09:21