Autor Zpráva
Ikki
Profil
Zdravím,
řeším teď trošku dilemu, ale asi mi to jen nemyslí.

Napsal jsem si klasický SQL select na získání hodnot pro výpis článků, jenže když joinu tabulku s komentáři a sečtu komentáře pro daný příspěvek, tak mi kód zobrazí pouze jeden jediný článek.

    public function getArticles() {
        $sql = 'SELECT [a.*], [at.name] AS [name_tag], COUNT([ac.id]) AS [comments] 
                FROM [articles] [a]
                LEFT JOIN [article_categories] [at] ON [a.tag] = [at.id]
                LEFT JOIN [article_comments] [ac] ON [a.id] = [ac.id_clanku]';
        $query = dibi::query($sql);
        return $query->fetchAll();
    }

Děkuji za případnou pomoc.
blaaablaaa
Profil
Ikki:
Musis na konec pridat podle ceho se maji data groupovat, tzn. GROUP BY a.id
Kajman
Profil
Pokud bude článek ne více kategoriiích, výpočet článků se bude násobit a kategorie se vypíše max. jedna - (a na některých konfiguracích to může zhavarovat). Jestli chcete vypsat všechny kategorie k článku, tak na to stejně musíte trochu jinak. Mrkněte na Srovnání dotazů do závislých tabulek
Ikki
Profil
blaaablaaa:
Díky, to mě v noci (ráno) vůbec nenapadlo!

Kajman:
Děkuji, sice vypisuji jen jednu kategorii (jedná se jen o pár sekcí), ale pomohlo mi to u další funkce!

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:

0