Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> MySQL relacje, Pobieranie danych jednoczesnie z kilku tabeli
qbsterr
post 1.10.2010, 14:11:12
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 14.07.2010

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


Witajcie.

Do końca nie wiem jak zatytułować topic ale jeżeli ktoś ma leprzy tytuł to proszę pisać.

Moj problem:
Okrojona baza, dla uproszczenie dwie tabelki

+----Produkty---+
| IDProduktu
|NazwaProduktu
+-----------------+

+---Paleta----+
| IDPalety
| IDProduktu
| Ilosc
+--------------+


Teraz sql:
  1. SELECT Produtky.NazwaProduktu,Paleta.Ilosc.Paleta.IDPalety FROM Produtky,Paleta WHERE Produtky.IDProduktu=Paleta.IDProduktu;


Pytanie jak najbardziej poprawne lecz mam problem w przypadku gdy w tabeli Paleta istnieje dla przykladu rekord IDProdukt o wartosci 3 a nie istnieje taki rekord w tabeli Produkty. MySQL zwraca mie listę rekodów pomijając ten rekord z tabeli Paleta.
Zależy mi aby ten rekord był wyświetlany mimo, że taki pradukt w tabeli Produkty nie istnieje.

Czy istnieje jakiś spsób inny niż odpytywanie bazę (table produkty) za każdym razem gdy chcę pobrać nazwę produktu ?

Mam nadzieję, że napisałęm to w miarę zrozumiale.

Pozdrawiam.
Go to the top of the page
+Quote Post
baltazar
post 1.10.2010, 16:44:33
Post #2





Grupa: Zarejestrowani
Postów: 9
Pomógł: 2
Dołączył: 13.07.2009

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


Powinno być ok
  1. SELECT Produtky.NazwaProduktu,Paleta.Ilosc.Paleta.IDPalety FROM Produtky RIGHT JOIN Paleta WHERE Produtky.IDProduktu=Paleta.IDProduktu;
Go to the top of the page
+Quote Post
qbsterr
post 2.10.2010, 10:10:59
Post #3





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 14.07.2010

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


Świetnie, dzięki wielkie. Dokładnie o to chodziło.
Dla następców zamiast WHERE wstawić ON

Pozdrawiam.
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: 19.06.2025 - 21:37