Autor Zpráva
Welton123
Profil
Zdravím, v tabulce 'fotky_list' mám fotky dom. mazlíčků, které potom vypisuji do tabulky pomocí while.
Poté mám tabulku hlasy, ve které mám sloupeček 'id_fotky' a sloupeček 'datum_hlasu'.

Součet hlasů získávám pomocí

$v = mysql_query("SELECT  id_fotky as max FROM hlasy WHERE id_fotky=".$row['id']."");
$hlasu_vypis = mysql_num_rows($v);
Moje otázka zní, zda je možné vypisovat fotky v pořadí podle toho, kolik mají hlasů ve druhé tabulce (hlasy) ?
Taps
Profil
Welton123:
Bude nutné tabulky propojit pomocí INNER nebo LEFT JOIN. Ukaž jakou máš strukturu tabulek
jenikkozak
Profil
SELECT *, (SELECT COUNT(*) FROM hlasy WHERE id_fotky=fotky.id) AS pocet FROM fotky ORDER BY pocet DESC
Lkopo
Profil *
SELECT `fotky_list`.`id` AS fotka_id, COUNT(`hlasy`.`id_fotky`) AS pocet_fotiek FROM `fotky_list` LEFT JOIN `hlasy` ON `fotky_list`.`id` = `hlasy`.`id_fotky` GROUP BY `fotky_list`.`id` ORDER BY pocet_fotiek DESC

Nie som si istý, či nebude hlásiť chybu v ORDER BY. Každopádne skús.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: