Criteria mit einer Art Having Count

Hallo,

ich zerbreche mir die ganze Zeit den Kopf…
Ich will über eine Criteria Bestellungen filtern die mehr als 4 Produkte, aber irgendwie stehe ich auf dem Schlauch, kann mir jemand eine Hilfestellung geben?

Danke liebe Grüße

Wäre auch an einer Lösung interessiert.

Es gibt keine HAVING-condition im Shopware-DAL. In Doncrine schon, deshalb könntest du dir die vielleicht selber schreiben, oder du kannst über Plain-SQL die IDs holen und dann deren Enities:

$connection = $this->container->get(Connection::class);

$stmt = $this->connection->executeQuery(
<<< 'SQL'
    SELECT `id`
    FROM `product`
    WHERE {condition}
    GROUP BY {column_name(s)}
    HAVING {condition}
    ORDER BY {column_name(s)}
    LIMIT 5
SQL);
$productIds = $stmt->fetchFirstColumn();

$criteria = new Criteria($productIds);
$products = $this->productRepository->search($criteria, $context);

1 „Gefällt mir“

Hey Alex,

super, Danke dir für die Aufklärung und auch deinen Lösungsvorschlag. Ich schaue mir das mal an, ich glaube, damit kann ich schon arbeiten. Schade, dass es mit dem Shopware - DAL nicht so einfach geht, aber wie man sieht, kann man sich helfen.

Danke dir
Gruß Oliver