Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] pobieranie danych z dwóch tabel
SaMi
post
Post #1





Grupa: Zarejestrowani
Postów: 173
Pomógł: 14
Dołączył: 27.03.2004
Skąd: Białystok

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


Witam,
Mam dwie tabele WYDARZENIA i PLIKI każde z wydarzeń może mieć przypisany co najmniej jeden plik.
Chcę teraz pobrać z bazy konkretne jedno wydarzenie i wszystkie przypisane do niego pliki o ile w ogle jakieś zostały do tego wydarzenia przypisane; i teraz pytanie pierwsze czy lepiej rozbić to na dwa zapytania czy kombinować z jednym.
Dwa zapytania nie stanowią problemu, gorzej jest z jednym zapytaniem, na razie stworzyłem coś takiego:

  1. SELECT w.id, og.tytul, w.tresc, p.nazwa_pliku
  2. FROM wydarzenia AS w
  3. LEFT JOIN pliki AS p ON ( w.id = p.id_powiazanie )
  4. WHERE w.id = '1'


Niestety jeśli jest więcej niż jeden plik to dane o wydarzeniu są wyświetlane tyle razy ile jest plików.
Tu też kończą się moje pomysły i wiedza z zakresu języka SQL.
Teraz pytanie drugie; czy da się w ogóle osiągnąć wspomniany wyżej cel jeśli tak to poprosił bym o jakieś podpowiedzi lub wskazówki.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
kefirek
post
Post #2





Grupa: Zarejestrowani
Postów: 781
Pomógł: 256
Dołączył: 29.06.2008

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


  1. $q=mysql_query("SELECT w.id, og.tytul, w.tresc, p.nazwa_pliku
  2. FROM wydarzenia AS w
  3. INNER JOIN pliki AS p ON ( w.id = p.id_powiazanie )
  4. WHERE w.id = '1' ORDER BY og.tytul");
  5. $cat = 0;
  6. while($r=mysql_fetch_array($q))
  7. {
  8. if($r['tytul'] != $cat){
  9.  
  10. echo '<b>Tytul: '.$r['tytul'].'</b><br />';
  11.  
  12. }
  13.  
  14. echo 'Nazwa Pliku: '.$r['nazwa_pliku'].'<br />';
  15.  
  16. $cat = $r['tytul'];
  17.  
  18. }


Ten post edytował kefirek 28.06.2011, 19:52:05
Go to the top of the page
+Quote Post

Posty w temacie


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: 14.10.2025 - 15:25