Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zapytanie "left join"
Forum PHP.pl > Forum > Bazy danych > MySQL
pablooo3
Poniżej przedstawiam mój problem z zapytaniem (na prostym przykladzie):

tabela1
----------
id | name
----------
1 | pawel
2 | marek
3 | darek

tabela2
---------------------------------
id | id_name | id_name2 | koniec |
----------------------------------
1 |....... 1..... |.... 2.......|.... tak...
2 |....... 2 .....|.....3.......|.....nie...


Wyswietlic w zapytaniu (np. left join) wszystkie rekordy z tabela2, gdzie koniec='tak' i zamiast id_name i id_name2 wstawic imiona z tabela1.

ps. id_name i id_name2, zawieraja id imion z tabela1.

dla powyzszego przykladu wynik:
1,pawel,marek,tak

Wielkie dzieki za pomoc:)
sticker
moze to coś pomoze ale nie testowałem
  1. SELECT A1.name, A2.name FROM tabela2 LEFT JOIN tabela1 A1 ON id_name = A1.id
  2. LEFT JOIN tabela1 A2 ON id_name2 = A2.id
  3. WHERE koniec ='tak'
pablooo3
super własnie o takie zapytanie mi chodzilo, dziala elegancko. Mam tylko jeszcze jedno pytanie. Jak wykonuje to zapytanie co mi napisales:
  1. <?php
  2. $sel = mysql_query("SELECT A1.name, A2.name FROM tabela2 LEFT JOIN tabela1 A1 ON id_name = A1.i
  3. LEFT JOIN tabela1 A2 ON id_name2 = A2.id 
  4. WHERE koniec ='tak'");
  5. ?>

i chce wyswietlic wynik w skrypcie php, w taki sposob:
  1. <?php
  2. while($rek1 = mysql_fetch_array($sel)){
  3.  echo $rek1['name']."<br>";
  4. }
  5. ?>

to jak mam zrobic, aby rozróżnic to name A1 i A2 z zapyatanie, bo nie moge użyc niczego takiego jak $rek1['A1.name'] i $rek1['A2.name'] , wlasnie tu mam zonka.

Wielkie dzieki za tamta pomoc i z gory dziekuje za ta.
Cienki1980
wystarczy zrobić coś w tym stylu:
  1. SELECT a1.name AS name1, a2.name AS name2 FROM a1, a2
pablooo3
Super, teraz wszystko chodzi!! Jestescie wielcy, duzo sie mozna nauczyc na tym forum przez zadawanie pytań ludziom, którzy sie na tym naprawde znaja:)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.