Błednie działające zapytanie (grupowanie, sortowanie) |
Błednie działające zapytanie (grupowanie, sortowanie) |
4.03.2009, 13:55:30
Post
#1
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 4.03.2009 Ostrzeżenie: (0%) |
Krotko wyjasnie budowe bazy i problem.
Mam trzy tabele: klasyfikacja(idskoczek,ps,...) idskoczek jest unikatowym id skoczka, ps iloscia punktow przez niego zdobytych; skoczkowie(idskoczek,idkraj,...) idkraj jest unikatowym id kraju, kraje(idkraj,nazwakraju,...) chyba czytelne ;-). Chce zrobic zapytanie ktore zsumuje ilosc punktow zdobtytych przez skoczkow kazdego kraju, a nastepnie posortuje powstala liste malejaco. Z niewiadomych mi przyczyn problem pojawia sie gdy uzywam group by. Punkty sa wtedy blednie zsumowane, praktycznie zadna cyfra sie nie zgadza. Moje zapytanie wejsciowe wyglada tak (tu jeszcze bez zamiany idkraju na nazwe i sortowanie, ale w momencie w ktorym juz sie blednie sumuje). Kod select skoczkowie.idkraj, klasyfikacja.ps from skoczkowie,klasyfikacja where klasyfikacja.idskoczek=skoczkowie.idskoczek group by idkraj; Co robie źle? |
|
|
4.03.2009, 14:02:19
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 890 Pomógł: 339 Dołączył: 14.12.2006 Skąd: Warszawa Ostrzeżenie: (0%) |
Ja bym to zrobił tak:
Ten post edytował sowiq 4.03.2009, 14:19:14 |
|
|
4.03.2009, 14:14:39
Post
#3
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 4.03.2009 Ostrzeżenie: (0%) |
Wydaje mi sie ze twoj kod liczy ilosc zawodnikow z poszczegolnych krajow, a nie sumuje ich punkty.
Problem chyba polega na tym co zdefiniowales jako ilosc_punktow czyli ten kawalek: Kod COUNT(k.ps) AS ilosc_punktow Count chyba zlicza elementy, a nie sumuje... Dzięki wielkie, teraz sobie poradzilem. Sog. Ten post edytował piopix 4.03.2009, 14:29:15 |
|
|
4.03.2009, 14:19:46
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 890 Pomógł: 339 Dołączył: 14.12.2006 Skąd: Warszawa Ostrzeżenie: (0%) |
|
|
|
Wersja Lo-Fi | Aktualny czas: 6.06.2024 - 06:49 |