Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mysql] kategorie, problem z wieloma kategoriami
memory
post
Post #1





Grupa: Zarejestrowani
Postów: 616
Pomógł: 84
Dołączył: 29.11.2006
Skąd: bełchatów

Ostrzeżenie: (0%)
-----


Witam mam relacje wiele-do-wielu

  1. SELECT news.*, GROUP_CONCAT(DISTINCT kategorie.nazwa SEPARATOR ', ') AS tagi
  2. FROM news LEFT JOIN komentarze ON komentarze.id=news.id
  3. LEFT JOIN tag ON (news.id=tag.newsid) LEFT JOIN kategorie ON (tag.katid=kategorie.idkat)
  4. WHERE kategorie.nazwa LIKE 'ciekawostki%'
  5. GROUP BY news.autor


Wyswietla wszytkie kategorie newsa.
np
News | kategorie : ciekawostki , ogolnie, php
News1 | kategorie : ciekawostki , strona, php
News2 | kategorie : ogolnie, strona, php

  1. WHERE kategorie.nazwa LIKE 'ciekawostki%'


Ma za zadanie wyszukanie wszystkich newsow z kategoria ciekawostki
Wyswietla mi np

News | kategorie : ciekawostki
News1 | kategorie : ciekawostki

A chcialbym zeby wyswietlilo wszystkie kategorie newsow wsrod odnalezionych
np

News | kategorie : ciekawostki , ogolnie, php
News1 | kategorie : ciekawostki , strona, php


Dziekuje za pomoc
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
prond
post
Post #2





Grupa: Zarejestrowani
Postów: 254
Pomógł: 10
Dołączył: 8.11.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


  1. SELECT news.*, GROUP_CONCAT(DISTINCT kategorie.nazwa SEPARATOR ', ') AS tagi
  2. FROM news LEFT JOIN komentarze ON komentarze.id=news.id
  3. LEFT JOIN tag ON (news.id=tag.newsid) LEFT JOIN kategorie ON (tag.katid=kategorie.idkat)
  4. WHERE news.id IN (SELECT news.id FROM news LEFT JOIN komentarze ON komentarze.id=news.id
  5. LEFT JOIN tag ON (news.id=tag.newsid) LEFT JOIN kategorie ON (tag.katid=kategorie.idkat) WHERE kategorie.nazwa LIKE 'ciekawostki%')
  6. GROUP BY news.autor
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 18:39