Ci sono 2 modi per ordinare. Ordine crescente e ordine decrescente. Non hai menzionato l'ordine. Quindi ti sto fornendo entrambe le risposte con 2 varianti:
ORDINE CRESCENTE:
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;
ORDINE DECRESCENTE:
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;
Se vuoi dire a MySQL di ordinare prima FIRST by volgnr e poi per product_id :
ORDINE CRESCENTE:
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;
ORDINE DECRESCENTE:
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;
Spero di esserti stato d'aiuto.
Modifica 1:
Ora ho modificato la query in modo che non ti dia duplicati nei risultati. Provalo e fammi sapere come va.
Modifica 2: Aggiunta clausola Group By. Prova questo.