Witam.
Powiedzmy mamy taką strukture - dwie tabelki:
nazwa tabeli - klient, kolumny: id, imie, nazwisko
nazwa tabeli - produkt, kolumny: id, id_osoby, nazwa
I tak jedna osoba może mieć max. 4 produkty i chce utworzyć zapytanie, gdzie wypluje mi tabele typu imie, nazwisko, produkt1, produkt2, produkt3, produkt4 - oczywiście jak ktoś nie wprowadzi wszyskich produktów niech w kolumnie będzie null. Myślałem nad tym i nie wiedziałem co zrobić. Wpadłem na pomysł, że dodaje kolumne order do produktu i przy dodawaniu produktu wstawiam numer produktu
SELECT CONCAT(K.`imie`, ' ', K.`nazwisko`) AS `nazwa_klient`, P1.`nazwa` AS `produkt1`, P2.nazwa AS `produkt2`, P3.nazwa AS `produkt3`, P4.nazwa AS `produkt4` FROM `klient` K LEFT JOIN `produkt` P1 ON(K.`id`= P1.`id_osoby` AND P1.`order`= 1) LEFT JOIN `produkt` P2 ON(K.`id`= P2.`id_osoby` AND P2.`order`= 2) LEFT JOIN `produkt` P3 ON(K.`id`= P3.`id_osoby` AND P3.`order`= 3) LEFT JOIN `produkt` P4 ON(K.`id`= P4.`id_osoby` AND P4.`order`= 4)
Wiem, że poprostu i najlepiej żeby w tabeli klient były od razu kolumny produkt1, produkt2 itd., ale powiedzmy, że jest taki układ. Co zrobić, aby utworzyć pytanie, gdzie nie musze tworzyć kolumy order ? Da się ?