Neviem si poradit s jednym sql dopytom na databazu s ktorym by som chcel vytiahnut najdiskutovanejsie prispevky.
Mam 2 tabulky, jedna kde sa nachadzaju vsetky novinky s vlastnym IDckom a druhu tabulku kde si vsetky komentare (kazdy komentar ma pri sebe udaj novinka_id ktory udava ku ktorej novinke komentar patri.)
To co chcem dostiahnut je vytiahnut z tabulky s komentarmi tych 5 'novinka_id' ktore maju v tabulke najvacsi vyskyt (cize ID noviniek pri ktorych je najviac komentarov) a nasledne vypisat nazvy tychto noviniek z druhej tabulky.
Moj dopyt vyzera nasledovne:
Kód: Vybrať všetko
$most_commented = mysql_query("SELECT news_id, COUNT(news_id) AS comments_count FROM comments GROUP BY news_id ORDER BY comments_count DESC LIMIT 5");
$i = 0;
while($data = mysql_fetch_array($most_commented))
{
$id[$i] = $data['news_id'];
$i++;
}
$where = "WHERE id = '".$id[0]."' OR id = '".$id[1]."' OR id = '".$id[2]."' OR id = '".$id[3]."' OR id = '".$id[4]."'";
$panel_query = mysql_query("SELECT * FROM news ".$where."");Funguje to aj takto ale ten posledny dopyt mi to uz nezoradi podla toho vyskytu v tabulke s komentarmi. Cize v podstate by som potreboval len ten dopyt na novinky zoradit podla vyskytu toho IDcka v druhej tabulke (komentare)
Urcite sa to da aj jednoduchsie spravit a verim ze sa najde niekto sikovnejsi nez ja. Dakujem