Zliczanie rekordów

0

Mam tabelę Wydarzenia. Zawarte są w niej informacje o wszystkich wydarzeniach w czasie meczu piłkarskiego, ma pole Zdarzenie, które może mieć wartość: bramka, żółta kartka, itp. Na postawie tej tabeli połączonej z Zawodnikiem stworzyłem kwerendę i chcę w niej wyliczać ile dany zawodnik strzelił bramek i ile dostał kartek. Jak mam zrobić to, by mi to dobrze liczyło?
Jak dam Count(Wydarzenia.Zdarzenie) to mi liczy wszystkie zdarzenia zawodnika. Myślałem, ze jak dam Count(Wydarzenia.Zdarzenie Like "bramka") to będzie działać, ale dalej liczy wszystkie zdarzenia danego zawodnika. macie jakiś pomysł?

1
SELECT Zawodnik, Wydarzenia.Zdarzenie, Count(Wydarzenia.Zdarzenie)
FROM Wydarzenia
LEFT JOIN Zawodnicy ON (...)
GROUP BY Zawodnik, Wydarzenia.Zdarzenie
0

Zacząłem robić już wcześniej z tym Group By, ale w końcu skończyło się na tym, że zrobiłem kwerendę krzyżową ;P
Ale Twój sposób jest faktycznie lepszy, bo o wiele krótszy i prostszy. Wielkie dzięki!
Jeszcze tylko takie pytanie: da się zrobić, by w połączonej tabeli były uwzględnione wszystkie pola z obu tabel?
Bo chcę mieć takie zestawienie dla wszystkich zawodników i dla wszystkich rodzajów wydarzeń. Po prostu tam, gdzie zawodnik nie ma żadnego wydarzenia danego typu, to byłoby 0.

EDIT Hmm, chyba zrobię z tej kwerendy kwerendę krzyżowa i będzie ok ;P

0

Jasne, że się da, tylko musisz w GROUP BY lub w funkcji agregującej (count(), sum() etc.) uwzględnić wszystkie pola, które będą zawarte w klauzuli SELECT.

EDIT: Daj jakiś przykład o jakie zestawienie Ci chodzi. Bo trochę Cię nie rozumiem.

0

Po zastanowieniu się, kwerenda krzyżowa z tej kwerendy która podałes i tak będzie najlepszym rozwiązaniem.
Ale tak z ciekawości to bym sie dowiedział jak zrobić to innym sposobem. W tym zestawieniu chodzi mi o to, że Wydarzenie może być bramką, żółta kartką lub czerwoną kartką. Chcę żeby wszyscy zawodnicy byli w tym zestawieniu, ale to nie problem bo łączę tabele lewostronnie (gdzie po lewej są zawodnicy). Ale chcę też żeby do każdego zawodnika było przypisane każde wydarzenie. Teraz są przypisane tylko te wydarzenia, które "zdobył", czyli jak zdobył bramke i nie ma akrtek, to w kwerendzie jest jeden jego rekord: Imie i Nazwisko | Bramka | 1. A chcę by też pokazywało mu ile ma kartek, nawet jeśli ma ich 0, czyli jeszcze chciałbym rekordy Imie i nazwisko | Żółte kartki | 0 i Imie i nazwisko | czerwone kartki | 0.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0