Die Konfiguration (Motor, Stoßdämpfer usw.) eines Fertigungsauftrags für ein Modellauto ergibt sich wie folgt:
Jeder Fertigungsauftrag der Tabelle mrp_production
hat eine product_id
die auf product_product
verweist, und die Tabelle product_product
hat eine Spalte combination_indices
, die einen String der Konfiguration enthält, z. B. 40,41,46,47,49,51,54,57,60
.
Diese Indices entsprechen den IDs von
select product_template_attribute_value.id, product_attribute_value.attribute_id, product_attribute_value.name from product_template_attribute_value join product_attribute_value on product_template_attribute_value.product_attribute_value_id=product_attribute_value.id;
also zum Beispiel für den Motor
id | attribute_id | name |
---|---|---|
38 | 6 | {"de_DE": "193kW", "en_US": "193kW"} |
39 | 6 | {"de_DE": "245kW", "en_US": "245kW"} |
40 | 6 | {"de_DE": "615kW", "en_US": "615kW"} |
d. h. die 40 in obigen combination_indices
bedeutet, dass der 615kW-Motor gewählt wurde.
Mit select id,name from product_attribute;
gibt's den Text zu obiger attribute_id
(und es gäbe alles auf einmal, wenn man einen doppelten join
syntaxfehlerfrei hinbekäme).