Strona 1 z 1
[SQL/PHP] Sortowanie odczytanych z bazy wyników
: sob gru 17, 2005 11:24 am
autor: Majzer
W bazie danych mam listę postów na forum.
I teraz chciałbym zrobić listę TOP5 najwięcej postujących, ale o tym kto ma ile postów dowiaduję się po wywołaniu dla każdego użytkownika zapytania i uzycia funkcji mysql_num_rows(); i teraz jak zrobić, aby te dane odczytane zostały posortowane od największego do najmniejszego? Bo tak to będę miał tylko listę wszsytkich użytkowników z ich liczbą postów, nieposortowaną.
Prosiłbym o radę.
Re: [SQL/PHP] Sortowanie odczytanych z bazy wyników
: sob gru 17, 2005 2:24 pm
autor: Stig
Aby zastosować malejący porządek sortowania należy w zapytaniu SQL użyć słowa kluczowego DESC. Przykład:
[sql]SELECT kolumna FROM tabela ORDER BY kolumna DESC;[/sql]
Ten temat był już na forum poruszany.
Re: [SQL/PHP] Sortowanie odczytanych z bazy wyników
: sob gru 17, 2005 3:08 pm
autor: Majzer
Wiem, ale nie oto mi chodzi.
Podałeś mi kod do zapytania z bazy kiedy te dane zliczone znajdują się w bazie.
Ale gdy one się nie znajdują, tzn. np jest 20 rekordów postów, z tego 5 napisał użytkownik załóżmy "xyz", ale o tym ile on napisał nie mam zapisane w rekordzie bazy w jego danych tylko dowiem się o tym po wywołaniu zapytanie:
[php]
$sql= mysql_query("SELECT * FROM `forum_posty` WHERE `user_id` = 'xyz'");
$ile=mysql_num_rows($sql);
[/php]
I teraz jak zrobie takię zapytanie w pętli dla np 10 użytkowników to wyświetli mi się nieposortowana lista: użytkownik i jego posty.
I teraz jak tą listę posortować od największego do najmniejszego?[/sql]
Re: [SQL/PHP] Sortowanie odczytanych z bazy wyników
: sob gru 17, 2005 5:35 pm
autor: viraptor
[sql]SELECT user_id, COUNT(user_id) AS cnt FROM 'forum_posty' GROUP BY user_id ORDER BY cnt DESC[/sql]
Re: [SQL/PHP] Sortowanie odczytanych z bazy wyników
: sob gru 17, 2005 5:46 pm
autor: Majzer
Wielkie dzięki! Oto mi właśnie chodziło!
