There are two ways to sort. Ascending and Descending. You did not mention the order. Therefore, I give you both answers with two options:
ORDER RECORD:
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;
ORDER DESCRIPTION:
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;
If you want to tell MySQL to first sort FIRST by volgnr, and then by product_id :
ORDER RECORD:
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;
ORDER DESCRIPTION:
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;
Hope this helps.
Change 1:
Now I edited the query so that it does not give you duplicates in the results. Try it and let me know how this happens.
Edit 2: Added Group By clause. Try it.
source share