![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 4.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Problem wyglada następująco otóż mam 2 tabele w bazie jedna z komentarzami a druga z newsami... Kod Komentarze: |Cid|cnid|... Gdzie CID to id komentarza a cnid to id newsa w którym ma sie wyświetlać. Problem polega na tym że nie mogę wpaść na pomysł jak poprawnie wyświetlić ilość komentarzy przy każdym newsie. Mógł by mnie ktoś jakoś ukierunkować? Pozdrawiam ! (IMG:style_emoticons/default/smile.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Problem ma się do php jak czajnik do ksiezyca (IMG:style_emoticons/default/winksmiley.jpg) przenosze
Lepiej jakbys jednak zrobil dodatkowe pole w newsach, w ktorym na biezacą bedziesz zapisywal liczbe komentarzy dla danego newsa. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 855 Pomógł: 145 Dołączył: 17.07.2008 Skąd: High Memory Area Ostrzeżenie: (0%) ![]() ![]() |
Kod SELECT n.*, count(c.ID) commentscount FROM news nLEFT JOIN comments c ON c.cnid=n.id GROUP BY n.id Zrobiłem sobie dla zabawy takie porównanie. Kod SELECT SQL_NO_CACHE n.ID, count(c.ID) commentscount FROM news n LEFT JOIN comments c ON c.cnid=n.id GROUP BY n.id 7756 rows fetched in 3.7738s (2.6421s) Kod SELECT SQL_NO_CACHE n.ID, c. commentscount FROM news n LEFT JOIN ( SELECT cnid, COUNT(*) AS commentscount FROM comments GROUP BY cnid) AS c ON c.cnid=n.id 7756 rows fetched in 3.1093s (0.4406s) (IMG:style_emoticons/default/smile.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 5.10.2025 - 01:46 |