Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Przedszkole _ [MySQL] Potrzebuje stworzyć jedna tabele z przypisanymi kilkoma wartościami z drugiej tabeli.

Napisany przez: michuwsh 22.10.2019, 13:28:46

Poszukuje rozwiązania lub odpowiedzi czy jest taka możliwość połączenia dwóch tabel w MySQL biorąc pod uwagę że dane z drugi tabeli posiadają kilka wierszy pasujących do jednego wiesza z tabeli pierwszej. Mój problem polega na tym że mamy dwie tabele nazwijmy je sobie :

osoby

id|imie|nazwisko

1|Jarek|Ogarek

2|Jan|Kowalski

3|Piotrek|Nowak

cechy

id|osoby_id|nazwa|wartosc

1|1|oczy|zielone

2|1|wlosy|blond

3|1|wiek|21

4|1|wzrost|170

5|2|oczy|szare

6|2|wlosy|ciemne

7|2|wiek|30

8|2|wzrost|169

Gdzie id osoby = osoby_id cechy. Po połączeniu chciałbym uzyskać następującą tabele. Tak aby wartości były zaprezentowane w pojedynczych wierszach. Nie tak np jak za pomocą INNER JOIN-a tylko tak :

id|imie|nazwisko|oczy|wlosy|wiek|wzrost

1|Jarek|Ogarek|zielone|blond|21|170

2|Jan|Kowalski|szare|ciemne|30|169

3|Piotrek|Nowak||||



Czy może ktoś mi pomóc ?

Napisany przez: nospor 22.10.2019, 13:32:31

Robisz normalny join jak robiles. A jak bardzo chcesz by mysql wrocil ci dane osoby w jednym wierszy to robisz GROUP BY po osobie oraz GROUP_CONCAT by polaczyc pola jakie chcesz

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)