# QueryBuilder: Zusatzinfos von Artikeln auslesen

**URL:** <https://forum.shopware.com/t/querybuilder-zusatzinfos-von-artikeln-auslesen/24261>\
**Category:** Shopware 3.5\
**Tags:** programming\
**Created:** [22. Dezember 2014 um 10:44 UTC](https://forum.shopware.com/t/querybuilder-zusatzinfos-von-artikeln-auslesen/24261 "2014-12-22T10:44:59Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Riot\_Inc](https://avatars.discourse-cdn.com/v4/letter/r/f17d59/32.png) [@Riot\_Inc](https://forum.shopware.com/u/Riot_Inc)\
**Post date:** [22. Dezember 2014 um 10:44 UTC](https://forum.shopware.com/t/querybuilder-zusatzinfos-von-artikeln-auslesen/24261/1 "2014-12-22T10:44:59Z")

</div>

Gude! Ich habe folgendes SQL Query, welches ich gerne mit dem QueryBuilder umsetzen würde: ` $sql= "SELECT DISTINCT s\_articles.id, releasedate, img, extension, price " . "FROM s\_articles, s\_articles\_details, s\_articles\_img, s\_articles\_prices " . "WHERE s\_articles.id = s\_articles\_details.articleID " . "AND s\_articles.id = s\_articles\_img.articleID ". "AND s\_articles.id = s\_articles\_prices.articleID ". "AND s\_articles.active = 1 ". "ORDER BY releasedate DESC"; ` Jetzt stehe ich aber irgendwie auf dem Schlauch. Ich habe bisher Folgendes: ` $builder = Shopware()-\>Models()-\>createQueryBuilder(); $builder-\>select(array('articles')) -\>from('Shopware\Models\Article\Article', 'articles') -\>andWhere('articles.active = :active'); $builder-\>setParameter('active', 1); ` Wie komme ich jetzt aber an die ganzen Produktbilder, Zusatzinfos etc. ran? Ich dachte der QueryBuilder gibt mir alle Infos zu den Artikeln mit raus … Viele Grüße, Patrick

---

<div class="post-metadata">

**Author:** ![EikeBrandtWarneke](https://avatars.discourse-cdn.com/v4/letter/e/cdc98d/32.png) [@EikeBrandtWarneke](https://forum.shopware.com/u/EikeBrandtWarneke)\
**Post date:** [22. Dezember 2014 um 11:03 UTC](https://forum.shopware.com/t/querybuilder-zusatzinfos-von-artikeln-auslesen/24261/2 "2014-12-22T11:03:15Z")

</div>

Schau mal in das repository vom Artikel model - da findest du nicht nur “fertige” builder, sondern auch jede Menge Beispiele. Viele Grüße

---

<div class="post-metadata">

**Author:** ![Riot\_Inc](https://avatars.discourse-cdn.com/v4/letter/r/f17d59/32.png) [@Riot\_Inc](https://forum.shopware.com/u/Riot_Inc)\
**Post date:** [22. Dezember 2014 um 14:47 UTC](https://forum.shopware.com/t/querybuilder-zusatzinfos-von-artikeln-auslesen/24261/3 "2014-12-22T14:47:30Z")

</div>

Ok … das hat eigentlich schon alle meine Fragen beantwortet. Danke 🙂 Werd das heute Abend kurz ausprobieren und meine Lösung posten!

---

<div class="post-metadata">

**Author:** ![Riot\_Inc](https://avatars.discourse-cdn.com/v4/letter/r/f17d59/32.png) [@Riot\_Inc](https://forum.shopware.com/u/Riot_Inc)\
**Post date:** [25. Dezember 2014 um 21:26 UTC](https://forum.shopware.com/t/querybuilder-zusatzinfos-von-artikeln-auslesen/24261/4 "2014-12-25T21:26:55Z")

</div>

Hab’s jetzt halbwegs geschafft. Das Ganze sieht so aus: ` $articleRepo = Shopware()-\>Models()-\>getRepository("Shopware\Models\Article\Article"); $articles = $articleRepo-\>createQueryBuilder(array('articles', 'mainDetail', 'prices', 'tax', 'images', 'links', 'linkAttribute', 'imageAttribute', 'propertyValues' )) -\>from('Shopware\Models\Article\Article', 'articles') -\>leftJoin('articles.mainDetail', 'mainDetail') -\>innerJoin('mainDetail.prices', 'prices') -\>leftJoin('articles.tax', 'tax') -\>leftJoin('articles.images', 'images') -\>leftJoin('articles.links', 'links') -\>leftJoin('links.attribute', 'linkAttribute') -\>leftJoin('images.attribute', 'imageAttribute') -\>leftJoin('articles.propertyValues', 'propertyValues') -\>where('articles.active = :active') -\>andWhere('images.parentId IS NULL') -\>addOrderBy('mainDetail.releaseDate', 'DESC') -\>setMaxResults('5') -\>setParameter('active',1) -\>getQuery() -\>getArrayResult(); `
