# Alle Attribute zu einem Produkt in der Datenbank finden

**URL:** <https://forum.shopware.com/t/alle-attribute-zu-einem-produkt-in-der-datenbank-finden/104081>\
**Category:** Programmierung\
**Tags:** general, programming\
**Created:** [22. Mai 2024 um 07:19 UTC](https://forum.shopware.com/t/alle-attribute-zu-einem-produkt-in-der-datenbank-finden/104081 "2024-05-22T07:19:25Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![thomas.kipp](https://avatars.discourse-cdn.com/v4/letter/t/b5e925/32.png) [@thomas.kipp](https://forum.shopware.com/u/thomas.kipp)\
**Post date:** [22. Mai 2024 um 07:19 UTC](https://forum.shopware.com/t/alle-attribute-zu-einem-produkt-in-der-datenbank-finden/104081/1 "2024-05-22T07:19:25Z")

</div>

Hallo,  
suche die Tabelle(n), die die im Screenshot aufgezeigten Produktattribute aufzeigen. Erwarte eigentlich einen Fremdschlüssel in der Tabelle product, der auf die entsprechende Tabelle referenziert, finde aber Keinen. Weiß jemand, in welcher Tabelle folgende Attribute hinterlegt sind und wie sie referenziert werden? Das Query zu formulieren dürfte mir dann schon gelingen.

---

<div class="post-metadata">

**Author:** ![Anotherone](https://avatars.discourse-cdn.com/v4/letter/a/6de8d8/32.png) [@Anotherone](https://forum.shopware.com/u/Anotherone)\
**Post date:** [22. Mai 2024 um 08:15 UTC](https://forum.shopware.com/t/alle-attribute-zu-einem-produkt-in-der-datenbank-finden/104081/2 "2024-05-22T08:15:57Z")

</div>

property\_group und property\_group\_option, Verknüpfung zum Produkt product\_property. Es gibt keinen Fremdschlüssel in product, da many-to-many

---

<div class="post-metadata">

**Author:** ![thomas.kipp](https://avatars.discourse-cdn.com/v4/letter/t/b5e925/32.png) [@thomas.kipp](https://forum.shopware.com/u/thomas.kipp)\
**Post date:** [22. Mai 2024 um 08:39 UTC](https://forum.shopware.com/t/alle-attribute-zu-einem-produkt-in-der-datenbank-finden/104081/3 "2024-05-22T08:39:09Z")

</div>

In der Tabelle property\_group gibt es die column sorting\_type und display\_type, die aber beide immer nur ‚alphanumeric‘ und ‚text‘ aufweisen.

In der Tabelle property\_group\_option gibt es gar kein varchar

In der Tabelle property\_group\_option\_translation gibt eine column name. Aber folgendes Query ergibt keinen vernünftigen Treffer:

```auto
SELECT * FROM `property_group_option_translation` WHERE `name` LIKE '%Werkstoff%';

```

Und folgendes Query liefert gar keinen Treffer:

```auto
SELECT * FROM `property_group_option_translation` WHERE `name` = 'Länge' OR name='Laenge';

```

---

<div class="post-metadata">

**Author:** ![Anotherone](https://avatars.discourse-cdn.com/v4/letter/a/6de8d8/32.png) [@Anotherone](https://forum.shopware.com/u/Anotherone)\
**Post date:** [22. Mai 2024 um 09:35 UTC](https://forum.shopware.com/t/alle-attribute-zu-einem-produkt-in-der-datenbank-finden/104081/4 "2024-05-22T09:35:24Z")

</div>

Das sind vermutlich die Gruppennamen, nicht die einzelnen Werte, oder? Probier mal

```auto
SELECT * FROM `property_group_translation` WHERE `name` LIKE '%Werkstoff%';

```

---

<div class="post-metadata">

**Author:** ![thomas.kipp](https://avatars.discourse-cdn.com/v4/letter/t/b5e925/32.png) [@thomas.kipp](https://forum.shopware.com/u/thomas.kipp)\
**Post date:** [22. Mai 2024 um 10:01 UTC](https://forum.shopware.com/t/alle-attribute-zu-einem-produkt-in-der-datenbank-finden/104081/5 "2024-05-22T10:01:34Z")

</div>

Bingo. Folgendes Query liefert folgendes Resultat:

```auto
SELECT * FROM `property_group_translation` WHERE `name` = 'Werkstoff';

```

Resultat:

 ![image](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/3X/6/0/6073a8f7f56d53cdf30deab98b3ca77a540c6c9a.png)

Mich damit jetzt zurück zu angeln zur Tabelle product wird wohl eine Sisyphusarbeit. Alles was ich vorerst habe ist der FK, der auf property\_group verweist. Ich hatte es bereits im vorigen Post erwähnt: Wenn es im Netz ein ER Diagramm der Datenbank gäbe, wäre vieles verständlicher. Ob diese beiden Treffer denselben Produkt zugewiesen sind, ist vorerst jedenfalls nicht zu erkennen…Die Frage, woher Du Deine Kenntnisse der Datenbank hast, wage ich erst gar nicht zu stellen…

---

<div class="post-metadata">

**Author:** ![Anotherone](https://avatars.discourse-cdn.com/v4/letter/a/6de8d8/32.png) [@Anotherone](https://forum.shopware.com/u/Anotherone)\
**Post date:** [22. Mai 2024 um 17:24 UTC](https://forum.shopware.com/t/alle-attribute-zu-einem-produkt-in-der-datenbank-finden/104081/7 "2024-05-22T17:24:26Z")

</div>

Probier mal

```auto
SELECT COUNT(DISTINCT pgo.property_group_id) AS counter, p.id, p.product_number, pgt.name 
FROM product p 
LEFT JOIN product_property pp ON p.id=pp.product_id 
LEFT JOIN property_group_option pgo ON pp.property_group_option_id=pgo.id
LEFT JOIN property_group_translation pgt ON pgo.property_group_id=pgt.property_group_id 
WHERE pgt.name = 'Werkstatt'
GROUP BY p.id
HAVING counter > 1;

```

---

<div class="post-metadata">

**Author:** ![thomas.kipp](https://avatars.discourse-cdn.com/v4/letter/t/b5e925/32.png) [@thomas.kipp](https://forum.shopware.com/u/thomas.kipp)\
**Post date:** [23. Mai 2024 um 07:14 UTC](https://forum.shopware.com/t/alle-attribute-zu-einem-produkt-in-der-datenbank-finden/104081/9 "2024-05-23T07:14:53Z")

</div>

> [@thomas.kipp](#):
>
> ```auto
> SELECT COUNT(DISTINCT pgo.property_group_id) AS counter, p.id, p.product_number, pgt.name 
> FROM product p 
> LEFT JOIN product_property pp ON p.id=pp.product_id 
> LEFT JOIN property_group_option pgo ON pp.property_group_option_id=pgo.id
> LEFT JOIN property_group_translation pgt ON pgo.property_group_id=pgt.property_group_id 
> WHERE pgt.name = 'Werkstatt'
> GROUP BY p.id
> HAVING counter >= 1;
> 
> ```

@Anotherone:  
Das passt soweit. Allerdings, wie oben erwähnt, mit Werkstoff, nicht mit Werkstatt. Vielen Dank für Deine Hilfe! Kannst Du mir bzgl. einer letzten Anfrage noch weiterhelfen? Ich veröffentliche die Anfrage wie gewohnt in Forum und zolle Dir höchsten Respekt für Deine Kenntnisse!! Werde diesen Thread heute Abend als gelöst markieren, damit Du diesen meinen letzten Post noch durchlesen kannst…  
Änderte das Query wie folgt ab, da ich mit den Aliasen Probleme habe. Hoffe, du nimst mir das nicht übel, schließlich ist es Dein Werk!

```auto
SELECT COUNT(DISTINCT property_group_option.property_group_id) AS counter, product.id, product_number, property_group_translation.name 
FROM product  
LEFT JOIN product_property ON product.id=product_property.product_id 
LEFT JOIN property_group_option ON product_property.property_group_option_id=property_group_option.id
LEFT JOIN property_group_translation ON property_group_option.property_group_id=property_group_translation.property_group_id 
WHERE property_group_translation.name = 'Werkstoff'
GROUP BY product.id
HAVING counter >= 1;

```

---

<div class="post-metadata">

**Author:** ![system](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/3X/2/9/29c7587ba660f00e4995d1743162782e5d6d8653.svg) [@system](https://forum.shopware.com/u/system)\
**Post date:** [22. Juni 2024 um 07:15 UTC](https://forum.shopware.com/t/alle-attribute-zu-einem-produkt-in-der-datenbank-finden/104081/10 "2024-06-22T07:15:13Z")

</div>

Dieses Thema wurde automatisch 30 Tage nach der letzten Antwort geschlossen. Es sind keine neuen Antworten mehr erlaubt.
