Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Rozbudowanie zapytania o COUNT()
Forum PHP.pl > Forum > Bazy danych > MySQL
miedzna
Mam takie zapytanie:
  1. SELECT i.imageid, i.categoryid, i.username, i.path, i.filename, i.title, i.viewcount, i.comcount, i.downloadcount, i.created, c.title AS categorytitle
  2. FROM _images i
  3. LEFT JOIN _categories c ON ( c.categoryid = i.categoryid )
  4. WHERE (
  5. i.usergroupids = 'all'
  6. OR i.usergroupids LIKE '%(1)%'
  7. )
  8. AND i.actived =1
  9. AND c.actived =1
  10. ORDER BY i.ordernum DESC
  11. LIMIT 0 , 10


Chcę dorzucić jeszcze coś w stylu COUNT( x.commentid ) AS ileKomentarzy i zapytanie zmienia sie na:
  1. SELECT COUNT( x.commentid ) AS ileKomentarzy, i.imageid, i.categoryid, i.username, i.path, i.filename, i.title, i.viewcount, i.comcount, i.downloadcount, i.created, c.title AS categorytitle
  2. FROM _images i, _comments x
  3. LEFT JOIN _categories c ON ( c.categoryid = i.categoryid )
  4. WHERE (
  5.  
  6. i.usergroupids = 'all'
  7. OR i.usergroupids LIKE '%(1)%'
  8. )
  9. AND i.actived =1
  10. AND c.actived =1
  11. ORDER BY i.ordernum DESC
  12. LIMIT 0 , 10


ale wywala błąd: #1054 - Nieznana kolumna 'i.categoryid' w on clause.
yevaud
zamiast
FROM _images i, _comments x
daj
FROM _comments x, _images i
miedzna
Działa, poprawne zapytanie:
  1. SELECT COUNT( x.commentid ) AS ileKomentarzy, i.imageid, i.categoryid, i.username, i.path, i.filename, i.title, i.viewcount, i.comcount, i.downloadcount, i.created, c.title AS categorytitle
  2. FROM _comments x, _images i
  3. LEFT JOIN _categories c ON ( c.categoryid = i.categoryid )
  4. WHERE (
  5. i.usergroupids = 'all'
  6. OR i.usergroupids LIKE '%(1)%'
  7. )
  8. AND i.actived =1
  9. AND c.actived =1
  10. GROUP BY i.imageid
  11. ORDER BY i.ordernum DESC
  12. LIMIT 0 , 10


Zamieniłem tak jak kazałeś i dorzuciłem group by dla kolumny i.imageid

Dzięki!

P.S. Niestety teraz pobiera liczbę komentarzy z jednego posta i tę samą liczbę wrzuca dla wszystkich, a jak dam AND x.imageid = i.imageid, to pobiera mi tylko te obrazki, co mają komentarze.
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.