Próbuję przygotować w Menedżerze SQL zapytanie, które dla każdego id_product_attribute wylistuje odpowiednie atrybuty w kolumnach.
Mam dwa rodzaje atrybutów w sklepie - Kolor i Rozmiar. Tabela ps_attribute_lang przechowuje nazwy atrybutów w jednej kolumnie - z tym mam problem.
Chciałbym uzyskać następującą tabelę:
------------------------------------- ID | Kolor | Rozmiar ------------------------------------- 1 | niebieski | XL ------------------------------------- 2 | czerwony | S -------------------------------------
Moje zapytanie to:
SELECT pa.`id_product_attribute` AS 'ID', al.`name` AS 'Kolor', al.`name` AS 'Rozmiar' FROM `ps_product` p JOIN `ps_product_attribute` pa USING (`id_product`) JOIN `ps_product_attribute_combination` pac USING (`id_product_attribute`) JOIN `ps_attribute` a ON pac.`id_attribute` = a.`id_attribute` JOIN `ps_attribute_lang` al ON a.`id_attribute` = al.`id_attribute` ORDER BY pa.`id_product_attribute`
Niestety otrzymuję wynik w postaci:
------------------------------------- ID | Kolor | Rozmiar ------------------------------------- 1 | niebieski | niebieski ------------------------------------- 1 | XL | XL ------------------------------------- 2 | czerwony | czerwony ------------------------------------- 2 | S | S
Dodanie
GROUP BY pa.`id_product_attribute`
też niewiele zmienia, bo dostaję wynik:
-------------------------------------
ID | Kolor | Rozmiar
-------------------------------------
1 | niebieski | niebieski
-------------------------------------
2 | S | S
Macie pomysł jak to zapisać?
Dzięki.