Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Połączenie pól w bazie danych
drax
post 22.04.2011, 20:03:49
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 19.06.2010

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


Mam tabelę sellout:

Kod
Pole | Typ | Null
id | int(5) | Nie
title | varchar(50) | Nie
content | text | Nie
image1 | varchar(30) | Nie
image2 | varchar(30) | Nie


Przykładowe dane:
Kod
id | title | content | image1 | image2
1 | sellout1 | <p>tresc1</p> | 12 | 14
2 | sellout2 | <p>tresc2</p> | 13 |


tabela sellout_img
Kod
Pole | Typ | Null
id | int(5) | Nie
image | varchar(30) | Nie


dane:
Kod
id | image
1 | wyp3.jpg
2 | 7.jpg
3 | 8.jpg


id w sellout_img odpowiada wartością image1 i image2 w sellout


Chcę aby zapytanie tworzyło coś na wzór:
Kod
id | title | content | image1 | image2
1 | sellout1 | <p>tresc1</p> | img123.jpg | image234.jpg
2 | sellout2 | <p>tresc2</p> | img233.jpg |


Jak należy użyć LEFT JOIN aby to działało poprawnie?
Go to the top of the page
+Quote Post
Crozin
post 22.04.2011, 20:08:31
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


  1. SELECT sellout.id id, sellout.title, sellout.content, si1.path AS image1, si2.path AS image2
  2. FROM sellout
  3. LEFT JOIN sellout_img si1 ON sellout.image1 = si1.id
  4. LEFT JOIN sellout_img si2 ON sellout.image2 = si2.id
Go to the top of the page
+Quote Post
drax
post 22.04.2011, 20:27:17
Post #3





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 19.06.2010

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


Czemu po wykonaniu tego zapytania dostaję błąd:
Kod
ERROR: [42S22] SQLSTATE[42S22]: Column not found: 1054 Unknown column 'si1.path' in 'field list'

?

Jest sposób aby sprawdzić strukturę tabeli po wykonaniu zapytania?

Ten post edytował drax 22.04.2011, 20:27:41
Go to the top of the page
+Quote Post
Crozin
post 22.04.2011, 20:35:31
Post #4





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Próbowałeś chociaż zrozumieć podane przeze mnie zapytanie czy na głupa kopiuj, wklej i bezmyślnie wrzucasz tu błędy?

Podpowiedź: walnąłem się w nazwie kolumny.

Ten post edytował Crozin 22.04.2011, 20:35:58
Go to the top of the page
+Quote Post
drax
post 22.04.2011, 20:56:52
Post #5





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 19.06.2010

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


  1. SELECT sellout.id id, sellout.title, sellout.content, si1.image AS image1, si2.image AS image2
  2. FROM sellout
  3. LEFT JOIN sellout_img si1 ON sellout.image1 = si1.id
  4. LEFT JOIN sellout_img si2 ON sellout.image2 = si2.id


Poprawiłem już.
Chwilę mi to zajęło.. wink.gif
Dziękuje serdecznie za pomoc:)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 20.07.2025 - 06:21