Autor Zpráva
Berny
Profil
Zdravím,
potřebuji poradit se sestavením dotazu.

Struktura tabulek:

posts
+----+----------+--------+
| id | id_users | post |
+----+----------+--------+
| 1 | 3 | post 1 |
| 2 | 3 | post 2 |
| 3 | 3 | post 3 |
+----+----------+--------+

users
+----+--------+
| id | jmeno |
+----+--------+
| 3 | Ctirad |
+----+--------+

comments
+---------+--------+
| id_post | comm |
+---------+--------+
| 2 | comm 1 |
| 2 | comm 2 |
| 2 | comm 3 |
| 2 | comm 4 |
| 2 | comm 5 |
+---------+--------+

A teď, jak už asi sami předpokládáte. Z tabulky "posts" se zobrazí vše seřazené podle ID.
Z tabulky "users" se vybere jméno autora -> posts.id_users=users.id
A nakonec v tabulce "comments" se spočítá počet komentářů k danému postu -> posts.id=comments.id_post
První 2 tabulky spojit dokáži, ale zatím se mi do toho nepodařilo zakomponovat počet komentářů.
Poradí mi někdo prosím?
Berny
Profil
Zdravím,
potřebuji poradit se sestavením dotazu.

Struktura tabulek:

posts

+----+----------+--------+
| id | id_users | post |
+----+----------+--------+
| 1 | 3 | post 1 |
| 2 | 3 | post 2 |
| 3 | 3 | post 3 |
+----+----------+--------+

users
+----+--------+
| id | jmeno |
+----+--------+
| 3 | Ctirad |
+----+--------+

comments
+---------+--------+
| id_post | comm |
+---------+--------+
| 2 | comm 1 |
| 2 | comm 2 |
| 2 | comm 3 |
| 2 | comm 4 |
| 2 | comm 5 |
+---------+--------+
A teď, jak už asi sami předpokládáte. Z tabulky "posts" se zobrazí vše seřazené podle ID.
Z tabulky "users" se vybere jméno autora -> posts.id_users=users.id
A nakonec v tabulce "comments" se spočítá počet komentářů k danému postu -> posts.id=comments.id_post
První 2 tabulky spojit dokáži, ale zatím se mi do toho nepodařilo zakomponovat počet komentářů.
Poradí mi někdo prosím?
djlj
Profil
SELECT posts.id,posts.post, users.jmeno, COUNT(comments.id_post) AS pocet
FROM posts
INNER JOIN users ON posts.id_users=users.id
LEFT JOIN comments ON posts.id=comments.id_post /*předpokládám, že u všeho komentáře nejsou, takže LEFT */
GROUP BY posts.id
Berny
Profil
djlj

To je přesně ono. Mockrát ti děkuju.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0