Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [sql] zapytanie: 2 tabele, 1 relacja, 3 pola
juzef6
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 8.07.2005

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


Czesc,

Mam problem ze sformulowaniem zapytania do bazy. Mam dwie tabele, przykladowo:

Kod
tabela: news (n)
id | title | photo1_id | photo2_id | photo3_id

tabela: photos (p)
id | file | description


Rekord w tabeli news posiada w polach photoX_id numer ID zdjecia z tabeli photos. I teraz chce za pomoca jednego zapytania uzyskac takie dane:

Kod
n.id, n.title, p.file(1), p.file(2) i p.file(3)


Jesli byloby jedno zdjecie to nie ma problemu:

  1. SELECT n.id, n.title, p.file, p.description
  2. FROM news n, photos p WHERE n.photo=p.id AND n.id=100


Ale jak w taki sposob wyciagnac 3 zdjecia (nazwy plikow i opisy) za pomoca jednego zapytania?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
toczek
post
Post #2





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 20.06.2005
Skąd: krakow/rzeszow

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


moze takie cos Ci pomoze, ale w sumie to wyciaga max. 3 wiersze a nie w 3 kolumnach ;]. Pewnie jakiegos widoku czy czegos trzeba uzyc (ale tego jeszcze nie umiem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ).
  1. SELECT n.id, n.title, p.file, p.description
  2. FROM news n, photos p
  3. WHERE (n.photo1_id = p.id OR n.photo2_id = p.id OR n.photo3_id = p.id) AND n.id = 100;
Go to the top of the page
+Quote Post
SongoQ
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Troche nie rozumiem, jesli masz 3 foto przypisanie do newsa to wtedy wyciagniesz 3 fotki. To masz dopasowanie rekordow i tyle.
Go to the top of the page
+Quote Post
juzef6
post
Post #4





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 8.07.2005

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


Ok, już sobie poradziłem. Sory za zamieszanie - użylem kilkukrotnie LEFT JOIN i teraz moge juz bez problemu wyciagnac potrzebne dane.


Dzieki za zainteresowanie.

Ten post edytował juzef6 3.08.2005, 18:31:15
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: 25.08.2025 - 04:19