Code:
SELECT
v.produkt_1,
v.produkt_2,
p.hersteller,
p2.hersteller,
COUNT(*) as anzahl
FROM
vergleich v
INNER JOIN
produkte p on p.name = v.produkt_1
INNER JOIN
produkte p2 on p2.name = v.produkt_2
WHERE
p.hersteller = p2.hersteller
AND
p.hersteller = 'Dell'
GROUP BY
CONCAT(produkt_1,produkt_2)
ORDER BY
anzahl DESC
LIMIT 0,5
Mit dieser Abfrage bekomme ich die Anzahl der miteinander verglichenen Produkte von einem Hersteller, geordnet nach Anzahl. Die ersten 5 Datensätze (am meisten miteinander verglichen) werden ausgegeben, jedoch nur von diesem einen Hersteller.
Ist es möglich nicht auf den Hersteller einzugrenzen und dann jeweils zu allen Herstellern diese 5 Datensätze zu bekommen? Es sollte so aussehen:
produkt | produkt | hersteller1
produkt | produkt | hersteller1
produkt | produkt | hersteller1
produkt | produkt | hersteller1
produkt | produkt | hersteller1
produkt | produkt | hersteller2
produkt | produkt | hersteller2
produkt | produkt | hersteller2
produkt | produkt | hersteller2
produkt | produkt | hersteller2
usw...