![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 27 Pomógł: 0 Dołączył: 18.12.2008 Skąd: Gostyń/Reda Ostrzeżenie: (0%) ![]() ![]() |
Baza: druzyna(druzyna_id, nazwa_druzyny), tabela(druzyna_id, strzelone, stracone).
chce żeby wyświetliło mi max, lub min w danej kolumnie (strzelone bądź stracone). max i min wyświetla ok. Problem polega na tym, że wyświetla mi zawsze nazwę drużyny, która została wpisana jako pierwsza do tabeli, mimo, że np. rekord max powinien podać inną drużynę. Kiedy wyświetlam id druzyn to jest ok, czyli problem tkwi w polaczeniu dwóch tabel pewnie, jednak nie jestem początkujący i nie umiem sobie z tym problemem poradzić moje zapytanie wygląda tak: select druzyna.nazwa_druzyny, max(tabela.strzelone) from `druzyna`, `tabela` where druzyna.druzyna_id=tabela.druzyna_id; |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 274 Pomógł: 54 Dołączył: 2.05.2006 Skąd: Nadarzyn Ostrzeżenie: (0%) ![]() ![]() |
ja bym to napisal tak
Kod select druzyna.nazwa_druzyny, tabela.strzelone from druzyna, tabela where druzyna.druzyna_id=tabela.druzyna_id order by tabela.strzelone DESC limit 1; wydaje mi sie ze moze byc szybciej niz korzystanie z max'a. ewentualnie z max'em Kod select druzyna.nazwa_druzyny, tabela.strzelone from druzyna, tabela where druzyna.druzyna_id=tabela.druzyna_id and tabela.strzelone = max(tabela.strzelone); twoj blad polegal na tym ze pobierasz nazwe druzyny ale nie mowisz ze ma byc to druzyna z najwieksza iloscia strzelonych bramek. czyli brakowalo albo dodatkowego warunku albo kolejnosci. Ten post edytował Rafal Filipek 5.01.2009, 20:57:56 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 27 Pomógł: 0 Dołączył: 18.12.2008 Skąd: Gostyń/Reda Ostrzeżenie: (0%) ![]() ![]() |
pierwszy sposób już próbowałem wcześniej i rzeczywiście się sprawdził. myślałem jednak, że będzie szybciej z użyciem maxa, ale nie pomyślałem o tym, że z zastosowaniem maxa musi przejrzeć całą kolumnę(chyba dobrze rozumuje?). Czyli zastosuje 1 sposób. Dzięki
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 23:00 |