Hauptbild einer Variante mittels SQL ermitteln

Hallo zusammen.

Ich such gerade verzweifelt eine Möglichkeit das Haupbild einer Variante mittels SQL direkt über die DB zu ermitteln. In der Tabelle s_articles_images fehlt leider ein Kennzeichen mit dem ich das Hauptbild identifizieren könnte. Lediglich die Reihenfolge könnte Aufschluss geben aber hier habe ich auch noch keine Möglichkeit gefunden die Einträge mit der kleinsten Reihenfolge zu gruppieren. 

Hier mal mein Ansatz einer Mapping-Tabelle:

SELECT ai.*, aid.article_detail_id, aid.img, aid.parent_id, m.path
FROM s_articles_img ai 
INNER JOIN s_articles_img aid ON aid.parent_id = ai.id 
INNER JOIN s_media m ON m.id = ai.media_id
GROUP BY aid.parent_id
ORDER BY ai.position ASC

Jemand eine Idee? Hocke da schon ne gefühlte Ewigkeit dran.

Gruß Mike

Wie lang ist deine Ewigkeit in Stunden, Tagen, Wochen?

Wozu brauchst du die Info?

Eine Zeit lang. Ich brauche die Infos um mit den Daten einen anderen Dienst zu bedienen. SQL deshalb damit das auch bei einigen Tausend Produkten sehr performat läuft :wink:

Schau mal hier https://github.com/shopware/shopware/blob/5.6/engine/Shopware/Bundle/StoreFrontBundle/Gateway/DBAL/VariantMediaGateway.php

1 Like

Hi @Shyim‍

Danke für den Tipp!! Sieht guut aus. Genau das hatte ich gesucht.