Es gibt 2 Sortiermöglichkeiten. Aufsteigende Reihenfolge und absteigende Reihenfolge. Sie haben die Reihenfolge nicht erwähnt. Also stelle ich Ihnen beide Antworten mit 2 Variationen zur Verfügung:
AUFSTEIGENDE REIHENFOLGE:
SELECT DISTINCT table1.*
FROM table1
INNER JOIN table2 ON table1.product_id = table2.product_id
GROUP BY table1.product_id
ORDER BY table2.product_id ASC, table2.volgnr ASC;
ABSTEIGENDE REIHENFOLGE:
SELECT DISTINCT table1.*
FROM table1
INNER JOIN table2 ON table1.product_id = table2.product_id
GROUP BY table1.product_id
ORDER BY table2.product_id DESC, table2.volgnr DESC;
Wenn Sie MySQL anweisen möchten, zuerst ZUERST nach volgnr und dann nach product_id zu sortieren :
AUFSTEIGENDE REIHENFOLGE:
SELECT DISTINCT table1.*
FROM table1
INNER JOIN table2 ON table1.product_id = table2.product_id
GROUP BY table1.product_id
ORDER BY table2.volgnr ASC, table2.product_id ASC;
ABSTEIGENDE REIHENFOLGE:
SELECT DISTINCT table1.*
FROM table1
INNER JOIN table2 ON table1.product_id = table2.product_id
GROUP BY table1.product_id
ORDER BY table2.volgnr DESC, table2.product_id DESC;
Hoffe das hilft.
Änderung 1:
Ich habe die Abfrage jetzt so bearbeitet, dass Sie keine Duplikate in den Ergebnissen erhalten. Probieren Sie es aus und lassen Sie mich wissen, wie es läuft.
Änderung 2: Group By-Klausel hinzugefügt. Probieren Sie es aus.