ďťż

[PHP&MySQL] Bardziej skomplikowane zapytania

       

Podstrony


telcocafe

Witam.
Nie potrafię ułożyć odpowiedniego zapytania do bazy danych. Cała sytuacja wygląda tak:
Są dwie tabele:
NEWS ( id, tytul, tresc )
KOMENT ( id, news_id, autor, tresc )

i teraz chodzi o to, by pobrać z NEWS wszystkie rekordy, oraz dodatkowo z KOMENT pobrać autora i treść pierwszego komentarza. Nie wiem jak sie do tego zabrać, tak żeby zrealizować to jednym zapytaniem.
Wiem, że można:
if( $zapytanie = mysql_query( 'SELECT * FROM NEWS' ) ) while( $wynik = mysql_fetch_assoc( $zapytanie ) { if( $zapytanie2 = mysql_query( 'SELECT autor, tresc FROM KOMENT WHERE news_id='.$wynik['id'].' ORDER BY ID LIMIT 1' ) ) { //tutaj reszta kodu } }

Tylko, że jest mały problem: jeżeli będzie powiedzmy 20 newsów na stronie to wystąpi aż 21 zapytań do bazy!!
plz. Pomóżcie bo to mnie przerasta :frusty:



SELECT news.id, news.title, news.tresc, koment.autor, koment.tresc FROM news LEFT JOIN koment ON news.id = koment.news_id GROUP BY news.tytul ORDER BY news.id DESC

Coś takiego. W zależności od efektu trzeba będzie pomanipulować kolumnami w GROUP BY i/lub ORDER BY
Użytkownik Riklaunim edytował ten post 16 sierpień 2007, 16:09

Coś takiego. W zależności od efektu trzeba będzie pomanipulować kolumnami w GROUP BY i/lub ORDER BY
Super. Wielkie dzięki, narazie działa nie wiem jak będzie jak więcej komentarzy się pojawi, ale dzięki. Miałbym taką małą prośbę: czy mógłbyś mi wytłumaczyć jak to działa? znalazłem jakiś poradnik, ale nie zrozumiałem ni w ząb jak to działa.

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.