Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Porównywanie rekordów z dwóch kolumn
chipoldo
post
Post #1





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 18.12.2008
Skąd: Gostyń/Reda

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


Natrafiłem na taki problem. Moja struktura bazy wygląda następująco:
druzyna(druzyna_id, nazwa_druzyny)
wyniki(wynik_id, druzyna_id_1, wynik_1, wynik_2, druzyna_id_2)

Chce aby wyświetliło mecz, w którym padł najwyższy wynik(czyli największa różnica bramek), czyli przy założeniu.
8-5
7-6
6-1
powinno wyświetlić 6-1. Przy takiej opcji kolumna wynik_1 posiada wartość 6, a kolumna wynik_2 wartość 1. Niby nie byłoby problemu, bo wystarczy napisac różnice wynik_1-wynik_2 i posortować. ale co jeśli wynik_2 będzie miał większą wartość od wynik_1, tzn wynik będzie 1-6. po prostu nie umiem połączyć warunków, żeby brało pod uwagę w1 - w2 i w2-w1 i z tego brało największą różnicę...


I drugie zadanko podam, co by nie zaśmiecać forum. Struktura tabel ta sam. Muszę jednak wyświetlić wynik, który padł najwięcej razy. czyli przy założeniu:
3-1
1-3
4-4
3-2
3-3
4-3
Powinno wyświetlić wynik 3-1 jako wynik który padł 2 razy. Niestety ponownie nie potrafię wymyśleć jak zrobić by brał pod uwagę w1 i w2 , a takze w2 i w1, z tym, że nie może podliczać "trójek" z innych wyników. Mam nadzieję że za bardzo nie zagmatwałem.
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 561
Pomógł: 6315
Dołączył: 27.12.2004




ad1)
O wartosci bezwglednej ABS nie slyszal? Co ty na matematyce robisz? (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
http://dev.mysql.com/doc/refman/5.0/en/mat...-functions.html
Go to the top of the page
+Quote Post
chipoldo
post
Post #3





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 18.12.2008
Skąd: Gostyń/Reda

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


no właśnie nie slyszal heh.Jestem początkujący, więc nie znam wszystkich funkcji stosowanych w MySQL, ale takiej strony potrzebowałem, sam nie wiem dlaczego tam nie zacząłem szukania:) nygustwo ?(IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Oki, to już czuje że sobie poradze (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) dzieki (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) a Czy do punktu drugiego jakaś wskazówka ?

Ten post edytował chipoldo 6.01.2009, 09:41:22
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 561
Pomógł: 6315
Dołączył: 27.12.2004




ad2) tak na szybko
  1. SELECT *, count(*) FROM tabela GROUP BY IF (wynik_1 > wynik_2,concat_ws('-',wynik_1, wynik_2),concat_ws('-',wynik_2, wynik_1))

Sortowanie juz sobie zrob sam
Go to the top of the page
+Quote Post
chipoldo
post
Post #5





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 18.12.2008
Skąd: Gostyń/Reda

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


dzięki bardzo za pomoc. temat zamknięty.
Go to the top of the page
+Quote Post

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: 23.12.2025 - 16:58