Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [mysql]Problem ze złożonym zapytaniem
Forum PHP.pl > Forum > Przedszkole
oomaster
Witam,

Mam mały problem z zapytaniem:

  1. SELECT webhot_forum_post.autor, webhot_forum_post.DATA, webhot_forum_kat.nazwa, webhot_forum_kat.opis,
  2. webhot_forum_kat.id, COUNT(webhot_forum_post.id) AS ilepost FROM webhot_forum_kat LEFT JOIN webhot_forum_post ON kat=webhot_forum_kat.id WHERE webhot_forum_kat.STATUS=1 GROUP BY kat ORDER BY webhot_forum_kat.DATA DESC


Wszystko dobrze pobiera czyli: nazwę forum, ilość postów i ostatni post. Tylko jest jeden problem zamiast pokazywać ostatni post pokazuje pierwszy post. Próbowałem zrobić ORDER BY webhot_forum_kat.data DESC ale wtedy wszystko wywara według daty nazwę, ilośc postów itd.
specialplan
Rzeczywiscie zlozone winksmiley.jpg

Zastanawia mnie cos...

  1. ON kat=webhot_forum_kat.id


Co to jest kat?
oomaster
Otóż kat pochodzi z tabeli webhot_forum_post i okresla ID z webhot_forum_kat czyli do której kategorii post należy.
specialplan
Nie pracuje na mySQL (dawne czasy), ale z tego co pamietam zawsze odwolywalem sie do konkretnych tabel w JOINach... LEFT JOIN zawsze wyrzuci Ci duplikaty przy probie sortowania - trzeba uzyc GROUP CONCAT na kolumny, ktore zwracaja duplikaty (nie wiem ktore to w Twoim przypadku, rozkmin sam i podmien)

  1. SELECT webhot_forum_post.autor, webhot_forum_post.DATA, webhot_forum_kat.nazwa, webhot_forum_kat.opis,
  2. webhot_forum_kat.id, COUNT(webhot_forum_post.id) AS ilepost, GROUP_CONCAT(webhot_forum_kat.nazwa SEPARATOR ',') AS nazwy FROM webhot_forum_kat LEFT JOIN webhot_forum_post ON webhot_forum_post.kat=webhot_forum_kat.id WHERE webhot_forum_kat.STATUS=1 GROUP BY webhot_forum_post.kat ORDER BY webhot_forum_kat.DATA DESC


Tak na zywca pisze, wiec moze nie byc do konca poprawnie, wiec pokombinuj z tym GROUP CONCAT:)

[edit]
Nie jestem pewny, ale moze tez byc tak, ze GROUP BY powinno byc tozsame z ORDER BY - ale to tak gdybam sobie. Pracuje na ORM glownie i zapytan do bazy nie wysylam prawie wcale:) Mam nadzieje, ze choc troche pomoglem.
Sabistik
Tytuł tematu nie spełnia wymagań regulaminu działu przedszkole. Zamykam. Prześlij poprawną formę do moderatora to otworzy.
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.