Autor | Zpráva | ||
---|---|---|---|
Ikki Profil |
#1 · Zasláno: 14. 8. 2018, 03:49:22
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 |
#2 · Zasláno: 14. 8. 2018, 08:06:00
Ikki:
Musis na konec pridat podle ceho se maji data groupovat, tzn. GROUP BY a.id |
||
Kajman Profil |
#3 · Zasláno: 14. 8. 2018, 08:58:59
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 |
#4 · Zasláno: 14. 8. 2018, 10:49:41
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! |
||
Časová prodleva: 6 let
|
0