andrzejlechniak
14.05.2011, 20:27:51
Witam
Jak w tytule przedstawiam, mam problem, a raczej zastanawiam się i nie wiem jak wypisać ilość komentarzy dla konkretnej wiadomości. Mam dwie tabele: jedna to 'wiadomości', druga to 'komentarze'. Jak wypisać ile do konkretnej wiadomości jest ile komentarzy. Chodzi o to, abym do wiadomości było napisane: np. komentarzy '71'. Chodzi tylko o wypisanie ILE tych komentarzy jest dla konkretnej wiadomości. Ma ktoś pomysł?
kokers
15.05.2011, 11:46:20
możesz użyć left join lub podselect w select gdzie używasz COUNT(*) ... dla ID=id_wiadomosci.
Fifi209
15.05.2011, 11:47:56
Pokaż jak przetrzymujesz newsy, komentarze.
kaliban.gnb
15.05.2011, 13:04:02
Coś takiego:
SELECT w.*,count(k.id) as cnt FROM
wiadomosci w
LEFT JOIN komentarze k ON (k.wiadomosc_id = w.id)
GROUP BY w.id
Dostaniesz liste wiadomosci, a w kolumnie "cnt" ilość komentarzy - będziesz potrzebował wyniku dla jednej wiadomości - dodasz "WHERE"
andrzejlechniak
15.05.2011, 13:55:45
wiadomości i komentarze są w bazie, to tabele:
wiadomości:
id | id_kategorii | wiadomość ...
a komentarze:
id | id_wiadomosci | wpis
za pomocą Left join łącze tak, że do każdej wiadomości przypisanych jest tyle komentarzy ile istnieje dla wiadomości. Chodzi mi tylko o to jak zliczyć, ile konkretnie dla DANEJ wiadomości jest komentarzy
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.