Wyświetlenie dwóch wartości zmiennych połączonych ze sobą po ID

0

Witam

Posiadam dwie Tabele:
=> posts (ID, post_title, post_type, .....)
=> postmeta (meta_id, post_id, meta_key, meta_value)

posts.ID = postmeta.post_id

Przykład tabeli posts
1 — Produkt A — Produkt
2 — Produkt B — Produkt
3 — Procukt C — Produkt
........

Przykład tabeli postmeta
1 — 2 — _gtin — 4250867587732
2 — 2 — SKU — 0000123
3 — 3 — _gtin — 4060756000347
4 — 3 — SKU — 0000321
5 — 1 — _gtin — 4060756000330
.......

Czy istnieje możliwość pobrania danych tak aby ID się nie powtarzało oraz do ID było przypisane jednocześnie wartość _gtin oraz SKU.
Przykład:

SELECT ID, post_title AS Nazwa, _gtin AS EAN, SKU FROM.....

Rezultat:
2 — Produkt B — 4250867587732 — 0000123
3 — Produkt C — 4060756000347 — 0000321
1 — Produkt A — 4060756000330 — .......

Z góry dziękuje za pomoc.

1

Dwa razy łączenie tabeli postmeta? W jednym bierzesz pod uwagę tylko wiersze z getin a w drugim SKU?

0

A mógłbym prosić o jakiś przykład wizualny konstrukcji SELECT?

0

SELECT *
FROM posts p
INNER JOIN postmeta pm ON pm.post_id = p.id AND pm.meta_key = '_gtin'
INNER JOIN postmeta pma ON pma.post_id = p.id AND pma.meta_key = 'SKU'

Pisane z palca i pewnie nie zadziała. Gdyby AND z = nie tego, to spróbuj z LIKE.

0

Zapytanie zostało przyjęte lecz "MySQL zwrócił pusty wynik (zero wierszy)"

1

A tak?

SELECT *
FROM posts p
INNER JOIN postmeta pm ON pm.post_id = p.id AND pm.meta_key LIKE '_gtin'
INNER JOIN postmeta pma ON pma.post_id = p.id AND pma.meta_key LIKE 'SKU'
0

Teraz działa prawidło. Dziękuję

1 użytkowników online, w tym zalogowanych: 0, gości: 1