Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Lacznie 3 tabel i wyswietlenie wynikow
Forum PHP.pl > Forum > Bazy danych > MySQL
czaq
Witam

Mam tabele (najwazniejsze fragmenty):

Karta:
id_karta
..
id_user
data_dodania
...
id_akcja

Akcja:
id_akcja
data
id_user

User:
id_user
nazwisko


Stworzylem sobie zapytanie, przykladowo:
  1. SELECT ka.*, a.*, u.id_user, u.imie_naz, dz.*
  2. FROM karta ka, dzial dz, user u, akcja a
  3. WHERE
  4. ka.id_karta = 1 AND
  5. ka.id_user = u.id_user AND
  6. ka.id_dzial = dz.id_dzial AND
  7. a.id_user = u.id_user AND
  8. a.id_user = u.id_user

które ladnie pokazuje to co chce otrzymac, z wyjatkiem:
Otoz w tym jednym rekordzie w tabeli karta podany id_user=1, a w tabeli akcja id_user=10
Chce zeby wynik koncowy byl np (zgodnie z konstrukcja tabeli karta z poczatku posta):

1, .., 2009-01-01, Nowak, 2009-10-01, Kowalski

Czytalem troche o JOIN-ach ale nie w zab nie moge zrobic tak jak chce...

Prosze o pomoc.
kefirek
  1. SELECT * FROM Karta k
  2. LEFT JOIN User u USING(id_user)
  3. LEFT JOIN Akcja a USING(id_user)
  4. WHERE k.id_karta=1
czaq
Cytat(kefirek @ 29.08.2009, 16:27:03 ) *
  1. [url="./Pobierz-Plik-156002.html"]pobierz[/url], [url="Plaintext-156002.html"]plaintext[/url] [list=1][*]SELECT * FROM Karta k[*]LEFT JOIN User u USING(id_user)[*]LEFT JOIN Akcja a USING(id_user)[*]WHERE k.id_karta=1[/list][SQL] [url="./Pobierz-Plik-156002.html"]pobierz[/url], [url="Plaintext-156002.html"]plaintext[/url]<!--QuoteEnd--></div><!--QuoteEEnd-->
  2.  
  3. Mam cos takiego, niby pokazuje wszystko co chce, ale w momencie kiedy karta.id_akcja = 0 nie pokazuje nic. Chce zrobic tak zeby bylo TO zapytanie co ponizej, ale rowniez dawalo odpowiedz nawet jezeli id_akcja=0 (czyli nie bylo zadnej)
  4. [sql]
  5. SELECT * FROM karta ka
  6. LEFT JOIN akcja a ON ka.id_akcja
  7. LEFT JOIN user u ON a.id_user
  8. LEFT JOIN user us ON ka.id_user
  9. LEFT JOIN dzial dz ON u.id_dzial
  10. WHERE ka.id_karta=1 AND
  11. u.id_dzial = dz.id_dzial AND
  12. a.id_user = u.id_user AND
  13. ka.id_user = us.id_user AND
  14. ka.id_akcja = a.id_akcja
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.