Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php/msql] Sortowanie tabeli
Puzi
post 4.03.2008, 20:16:16
Post #1





Grupa: Zarejestrowani
Postów: 231
Pomógł: 17
Dołączył: 26.08.2007

Ostrzeżenie: (10%)
X----


Witam,
Mam taki problem... Mam tabele o nazwie "Tabela" i w niej mam kolumny: nazwa, punkty, bramki i bilans. I chcę posortować tą tabelę według następujących kryteriów. Chciałbym aby sortowało mi tą tabele według punktów a jeśli liczba punktów była by taka sama to żeby posortowało te drużyny według bilansu. Jak to zrobić??

Pozdrawiam i proszę o pomoc
Go to the top of the page
+Quote Post
luniak
post 4.03.2008, 20:20:18
Post #2





Grupa: Zarejestrowani
Postów: 171
Pomógł: 36
Dołączył: 12.01.2008
Skąd: Puszcza Mariańska

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


Zapytanie powinno wyglądać tak:

  1. "SELECT * FROM `Tabela` ORDER BY `punkty`, `bilans` DESC"


Oczywiście domyślam się ze chcesz sortować wyniki od największego do najmniejszego stąd ten DESC na końcu biggrin.gif

Ten post edytował luniak 4.03.2008, 20:24:19


--------------------
Jeżeli ktoś na forum Ci pomógł, możesz mu podziękować klikając w opcje "Pomógł" pod jego postem!
--------------------

Go to the top of the page
+Quote Post
Puzi
post 4.03.2008, 20:37:32
Post #3





Grupa: Zarejestrowani
Postów: 231
Pomógł: 17
Dołączył: 26.08.2007

Ostrzeżenie: (10%)
X----


Dałem tak i taki wynik mi wyszedł:
Kod
1. druzyna  4      7:8     -1
2. druzyna 6     10:27      -17
3. druzyna 6 11:12      -1
4.druzyna 7  29:10    19


I najpierw jest miejsce, nazwa druzyny, punkty, bramki a na samym koncu bilans...
Więc jest coś nie tak bo druzyny powinny być ustawione odwrotnie.

Ten post edytował Puzi 4.03.2008, 20:39:52
Go to the top of the page
+Quote Post
luniak
post 4.03.2008, 20:40:40
Post #4





Grupa: Zarejestrowani
Postów: 171
Pomógł: 36
Dołączył: 12.01.2008
Skąd: Puszcza Mariańska

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


1. Po pierwsze coś rozkraczony masz ten kod.
2. Po drugie mógłbyś tutaj wrzucić kod php któru używasz do wyświetlania danych??
3. Po trzecie jaki masz format danych w tablei dla pól bilans i punkty??

Ten post edytował luniak 4.03.2008, 20:41:58


--------------------
Jeżeli ktoś na forum Ci pomógł, możesz mu podziękować klikając w opcje "Pomógł" pod jego postem!
--------------------

Go to the top of the page
+Quote Post
nevt
post 4.03.2008, 20:43:42
Post #5





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

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


kolega luniak zapomniał o jednym DESC
  1. SELECT * FROM `Tabela` ORDER BY `punkty` DESC, `bilans` DESC;


--------------------

-
Oh no, my young coder. You will find that it is you who are mistaken, about a great many things... -
Go to the top of the page
+Quote Post
Puzi
post 4.03.2008, 20:48:14
Post #6





Grupa: Zarejestrowani
Postów: 231
Pomógł: 17
Dołączył: 26.08.2007

Ostrzeżenie: (10%)
X----


Mój kod do wyświetlania jest taki:
Kod
$tresc_zapytania = "SELECT * FROM `cms_tabela_10` ORDER BY `punkty`, `bilans` DESC";
$zapytanie = mysql_query($tresc_zapytania);
while ($wiersz = mysql_fetch_row($zapytanie))
{
  echo '
  <tr>
  <td><center>'.$a++.'.</center></td>
  <td>'.$wiersz[0].'</td>
  <td><center>'.$wiersz[1].'</center></td>
  <td><center>'.$wiersz[2].'</center></td>
  <td><center>'.$wiersz[3].'</center></td>
  <td><center>'.$wiersz[4].'</center></td>
  <td><center>'.$wiersz[5].'</center></td>
  <td><center>'.$wiersz[6].':'.$wiersz[7].'</center></td>
  <td><center>'.$wiersz[8].'</center></td>
  </tr>
  ';    
}    
echo '</table>';


Ten post edytował Puzi 4.03.2008, 20:49:59
Go to the top of the page
+Quote Post
luniak
post 4.03.2008, 20:52:01
Post #7





Grupa: Zarejestrowani
Postów: 171
Pomógł: 36
Dołączył: 12.01.2008
Skąd: Puszcza Mariańska

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


Cytat(nevt @ 4.03.2008, 20:43:42 ) *
kolega luniak zapomniał o jednym DESC
  1. SELECT * FROM `Tabela` ORDER BY `punkty` DESC, `bilans` DESC;


Nie nie zapomniałem, jeżeli masz zadeklarowany rodzaj sortowania raz i to na końcu to odnosi się on do wszystkich elementów

PS: Przynajmniej u mnie w skryptach tak to działało

Ten post edytował luniak 4.03.2008, 20:53:16


--------------------
Jeżeli ktoś na forum Ci pomógł, możesz mu podziękować klikając w opcje "Pomógł" pod jego postem!
--------------------

Go to the top of the page
+Quote Post
Puzi
post 22.03.2008, 17:17:03
Post #8





Grupa: Zarejestrowani
Postów: 231
Pomógł: 17
Dołączył: 26.08.2007

Ostrzeżenie: (10%)
X----


Witam,
Natrafiłem na kolejny problem związany z sortowaniem tabeli piłkarskiej. Jeśli np. dwie drużyny mają tyle samo punktów to powinno mi sortować według bilansu. Jeśli te dwie drużyny mają dodatni bilans to sortuje dobrze ale jeśli te drużyny mają ujemne bilanse to wynik jest nie taki jak powinien.
Zamiszeczam wynik sortowania tabeli według tego kodu:
Kod
$tresc_zapytania = "SELECT * FROM `tabela` ORDER BY `punkty` ASC, `bilans` DESC";


Oto wynik sortowania:
Cytat
1. Druzyna1 20 12
2. Druzyna3 20 10
3. Druzyna2 5 -10
4. Druzyna4 5 -5


Kolejno - miejsce - nazwa druzyny - punkty - bilans

Proszę o pomoc

Ten post edytował Puzi 22.03.2008, 17:18:10
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 16.07.2025 - 19:28