Получить несколько атрибутов продукта в виде столбцов в catalog_product_entity

Я пытаюсь сделать таблицу, которая показывает список продуктов с различными атрибутами продукта, но я полностью застрял в том, как это сделать.

Ожидаемая таблица выглядит следующим образом:

entity_id, sku, price, cost
        1, abc,    20,   15
        2, def,    30,   25
        3, ghi,    10,    5

Оба приведенных ниже атрибута продукта хранятся в одном и том же столбце «значение» в таблице «catalog_product_entity_decimal».

Price: attribute_id = 77

Cost: attribute_id = 81

Таким образом, если я выполняю внутреннее соединение таблиц, каждый entity_id имеет 2 строки для attribute_id 77 и 81.

Не могли бы вы помочь мне преодолеть это?


person Makoto    schedule 27.11.2019    source источник
comment


Ответы (1)


Вы можете присоединиться к таблице для атрибута два раза

select a.entity_id, a.sku, b.value price, c.value cost
from your_product_table a
inner join your_table_attribute b
  on a.entity_id = b.entity_id 
      AND b.attribute_id = 77
inner join  your_table_attribute c on a.entity_id = c.entity_id
      AND c.attribute_id = 81
where  a.entity_id = 1 
person scaisEdge    schedule 27.11.2019