Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MYSQL]Warunek WHERE przy zliczaniu rekordów
szczabik
post
Post #1





Grupa: Zarejestrowani
Postów: 226
Pomógł: 1
Dołączył: 13.05.2008

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


Mam takie zapytanie
  1. SELECT SUM(pkt) AS pkt, COUNT(druzyna_id) AS wygranych FROM mecze WHERE druzyna_id='1' GROUP BY druzyna_id

I jak dodać do tego warunek WHERE by liczyło tak gdy pole zdobyte_bramki jest wieksze stracone_bramki
i dodałem to tak
  1. SELECT SUM(pkt) AS pkt, COUNT(druzyna_id) WHERE zdobyte_bramki > stracone_bramki AS wygranych FROM mecze WHERE druzyna_id='1' GROUP BY druzyna_id

ale wywala wtedy błąd

Ten post edytował szczabik 11.11.2008, 17:28:23
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
szczabik
post
Post #2





Grupa: Zarejestrowani
Postów: 226
Pomógł: 1
Dołączył: 13.05.2008

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


Mam taką tabele
rmecz_id |druzyna_id |pkt |zdobyte_bramki |stracone_bramki |przeciwnik_id
1 1 0 1 4 4
2 2 3 3 0 2
3 1 0 3 5 6
4 1 3 2 1 5
5 1 0 1 2 9
5 1 1 1 1 3

I takim kodem
  1. SELECT SUM(pkt) AS pkt, COUNT(druzyna_id) AS ile, SUM(zdobyte_bramki) AS zdobyte,
  2. SUM(stracone_bramki) AS stracone FROM mecze WHERE druzyna_id='1' GROUP BY druzyna_id");

zliczam ile drużyna rozegrała meczy ile zdobyła bramek ile straciła i ile ma pkt
I chciałem do tego za pomocą
  1. COUNT(druzyna_id) WHERE (zdobyte_bramki > stracone_bramki) AS wygranych,
  2. COUNT(druzyna_id) WHERE (zdobyte_bramki < stracone_bramki) AS przegranych,
  3. COUNT(druzyna_id) WHERE (zdobyte_bramki = stracone_bramki) AS remis


Policzyć ile druzyna ma wygranych przegranych i zremisowanych meczy
i nie wiem jak to zrobić ?

Zrobiłem tak ale wywala Nieznana tabela 't'
  1. SELECT t.*, SUM(pkt) AS pkt, COUNT(druzyna_id) AS ile, SUM(zdobyte_bramki) AS zdobyte,
  2. SUM(stracone_bramki) AS stracone, (SELECT COUNT(druzyna_id)
  3. FROM mecze r
  4. WHERE (r.zdobyte_bramki > t.zdobyte_bramki)) AS wygrane
  5. , (SELECT COUNT(druzyna_id)
  6. FROM mecze r
  7. WHERE (r.zdobyte_bramki < t.zdobyte_bramki)) AS przegrane
  8. , (SELECT COUNT(druzyna_id)
  9. FROM mecze r
  10. WHERE (r.zdobyte_bramki = t.zdobyte_bramki)) AS remis FROM mecze WHERE druzyna_id='1' GROUP BY druzyna_id


Ten post edytował szczabik 11.11.2008, 19:30:15
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: 7.10.2025 - 09:02