Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Łączenie 3 tabe
Forum PHP.pl > Forum > Bazy danych
user_2012
Witam,

Potrzebuje pomocy ze złączeniem trzeb tabel i wyświetleniem wyników w odpowiadającej mi formie.
Mam następujące tabele:


plyty
  1.  
  2. id | nazwa
  3. ----+--------
  4. 1 | plyta1
  5. 2 | plyta2
  6. 3 | plyta3
  7. 4 | plyta4
  8. 5 | plyta5




zakup
  1. id | nazwa_plyty | DATA
  2. ----+---------------+------------------------
  3. 1 | plyta5 | 2013-10-19 12:00:00+02
  4. 2 | plyta3 | 2013-10-18 15:15:00+02
  5. 3 | plyta1 | 2013-09-25 11:00:00+02
  6. 4 | plyta1 | 2013-10-17 12:00:00+02
  7. 5 | plyta4 | 2013-10-14 12:00:00+02


wypozyczenie
  1. id | numer_wypozyczenia | data_wypozyczenia | data_oddania | id_plyty
  2.  
  3. ----+------------------------+------------------------+------------------------+---------
  4. -
  5. 1 | 10 | 20:00:00 | 2013-10-13 11:00:00+02 | 1
  6. 2 | 15 | 12:00:00 | 2013-10-13 13:00:00+02 | 1
  7. 3 | 17 | 15:00:00 | 2013-10-19 13:00:00+02 | 5
  8. 4 | 18 | 17:00:00 | 2013-10-15 14:00:00+02 | 2
  9. 5 | 19 | 17:15:00 | 2013-10-16 18:00:00+02 | 3


I z tych trzech tabel potrzebuje wyciągnąć dane np dla płyty 1 tzn całą histori?dla tej płyty.
Np.

Informacje o płycie1
Data | Opis
2013-10-14 12:00 | Zakup
2013-10-11 20:00 | Wypożyczenie
2013-10-13 11:00 | Oddanie
2013-09-12 13:00 | Wypożyczenie
2013-09-20 12:00 | Oddanie
2013-10-07 14:00 | Wypożyczenie
2013-10-09 14:00 | Oddanie

Oczywiście daty posortowane.
Walczę z tym już kilka dni i nie mogę dać rady. Próbowałem różnych złączeń, podzapytań i bez rezultatu. Proszę o pomoc jak powinno wyglądać zapytanie, aby mógł później za pomocą PHP wyświetlić taką historię.
timon27
Coś w rodzaju:


  1. SELECT CONCAT(data1,data2) AS DATA,CONCAT(DATA ,data_oddania) AS opis FROM
  2.  
  3. (SELECT id,'Wypożyczenie' AS opis1,DATA FROM zakup) AS tabela1
  4.  
  5. JOIN
  6.  
  7. (SELECT id,'Oddanie' AS opis2,data_oddania FROM zakup) AS tabela2
  8.  
  9. ON tabela1.id=tabela2.id
  10.  
  11. WHERE id=1
  12.  
  13. ORDER BY DATA
user_2012
timon27 wielkie dzięki za odpowiedź. A czy mógłbyś dostosować to zapytanie do moch tabel :] bo coś nie mogę tego ogarnąć ;]
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.