Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [SQL]Pobieranie danych z dwóch tabeli
-Reki-
post
Post #1





Goście







W jaki (najprostrzy) sposób można pobrać dane z tabeli w zależności od danych z innej tabeli?
Przykład:
Mam dwie tabele:
users z polami - uid, www, email
oraz:
users name z polami - uid, user_name

I teraz chciałbym jednym zapytaniem pobrać wszystkie dane czyli - uid, www, email oraz user_name w zależności od pobieranego uid.
Go to the top of the page
+Quote Post
koobs
post
Post #2





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 22.07.2006
Skąd: Wrocław

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


  1. SELECT u.*, un.user_name
  2. FROM users u
  3. LEFT JOIN users_name un ON un.uid = u.uid
  4. WHERE u.uid = $uid


Ten post edytował koobs 23.07.2006, 21:12:28
Go to the top of the page
+Quote Post
batman
post
Post #3





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Najprostszym sposobem będzie:

  1. SELECT
  2. u1.uid,
  3. u1.www,
  4. u1.email,
  5. u2.user_name
  6. FROM users u1,
  7. users_name u2
  8. WHERE u1.uid = u2.uid


Ten post edytował batman 23.07.2006, 21:25:13


--------------------
I would love to change the world, but they won't give me the source code.
My software never has bugs. It just develops random features.
Go to the top of the page
+Quote Post
dawhol
post
Post #4





Grupa: Zarejestrowani
Postów: 256
Pomógł: 0
Dołączył: 19.07.2006
Skąd: Ostrów Wielkopolski

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


a nie prosciej by bylo zrobic to w jednej tabeli bo ja nie widze róznicy wiec po co przeplacac biggrin.gif


--------------------
Go to the top of the page
+Quote Post
batman
post
Post #5





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




W zupełności zgadzam się z dawhol. Najlepiej trymać podobne dane w jednej tabeli. Ale jeśli nie ma takiej możliwości, wówczas polceam podamne rozwiązanie winksmiley.jpg


--------------------
I would love to change the world, but they won't give me the source code.
My software never has bugs. It just develops random features.
Go to the top of the page
+Quote Post
koobs
post
Post #6





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 22.07.2006
Skąd: Wrocław

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


batman zapytanie ktore zaproponowales jest lipne. w przypadku gdyby w drugiej tabeli nie bylo wpisu i tym samym uid dane w ogole nie byly by pobrane. poza tym na joinach mozna grupowac etc.

Ten post edytował koobs 23.07.2006, 22:02:19
Go to the top of the page
+Quote Post
-Reki-
post
Post #7





Goście







Dawhol - masz rację, ale ja podałem tylko przykład. Chodziło mi jedynie o to w jaki sposób to dokładnie zrobić ^^.

Jednego tylko nie rozumiem:

  1. users u


czy taki zapis powoduje nadanie aliasu "u" tabeli "users"?
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 Aktualny czas: 19.08.2025 - 13:22