Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Łączenie dwoch tabel, proste zapytanie, klucz obcy czy left join ?
Emet
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 9.07.2003

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


Mam trzy tabele :
Pirewsza:
USERS
id | id_typ | nazwa | data | woj | kraj (id - primary key)

Druga:
WOJ
id | nazwa (id - primary key)

Trzecia:
KRAJ
id | nazwa (id - primary key)

Tabela WOJ zawiera nazwy wojewodztw z przyporzadkowanym id, ten id jest odpowiednio uzyty w polu woj w tabeli USERS w zaleznosci z jakiego wojewodztwa pochodzi uzytkownik. Ta sama zasada jest z tabela KRAJ, poprostu nie wpisuje w tabeli USERS pelnych nazw wojewodztw i krajow tylko ich id.

Chce pobrac wszystkie pozycje z tabeli USERS o podanym id_typ, ale tak zeby w pola woj i kraj automatycznie byly przeniesione odpowiednie nazwy (zgodne z id ) z tabel WOJ i KRAJ .

Czy nalezaloby zastosowac tutaj kluczew obce, jesli tak to jak ? Czy moze wystarczy wykonac odpowiednie zapytanie, left join ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
spenalzo
post
Post #2





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

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


  1. SELECT u.*, w.nazwa, k.nazwa FROM users u LEFT JOIN wojewodztwa w ON (u.woj=w.id) LEFT JOIN kraje k ON (u.kraj=k.id) WHERE id_typ='costam' GROUP BY u.id


  1. SELECT u.*, w.nazwa, k.nazwa FROM users u , wojewodztwa w , kraje k WHERE id_typ='costam' AND u.kraj=k.id AND u.woj=w.id GROUP BY u.id
Go to the top of the page
+Quote Post
Emet
post
Post #3





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 9.07.2003

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


Dzieki bardzo, w sumie to rzeczywiscie blad tkwil nie w samym zapytaniu, ktore jak sie okazalo bylo ok, ale w samym odebraniu tego zapytania w php. problem sprawialy te same nazwy pol w trzech tabelach - nazwa, przez co funkcja fetch_assoc() zwracala dziwne wyniki - po zmianie nazw pol w bazie wszystko oki.

Ten post edytował Emet 8.11.2004, 15:04:44
Go to the top of the page
+Quote Post
szachor
post
Post #4





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 9.11.2004
Skąd: Jaworzno

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


sorki ze sie wtrace w wontek ale jestem zielony a tez potrzebuje wiedziec jak sobie myknac zapytanie pomiedzy kilkoma tabelami i nie kumam tej rozpiski (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) moglby ktos jasniej napisac jak sobie to mam smignac dzieki z gory sorki za problem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
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: 23.08.2025 - 23:33