Есть 2 способа сортировки. По возрастанию и по убыванию. Вы не упомянули заказ. Итак, я предоставляю вам оба ответа в двух вариантах:
ПОСЛЕДУЮЩИЙ ЗАКАЗ:
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;
ПОРЯДОК РАСШИРЕНИЯ:
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;
Если вы хотите указать MySQL сначала отсортировать FIRST по volgnr, а затем по product_id :
ПОСЛЕДУЮЩИЙ ЗАКАЗ:
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;
по убыванию:
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;
Надеюсь, это поможет.
Редактировать 1:
Я отредактировал запрос так, чтобы он не давал дубликатов в результатах. Попробуйте и дайте мне знать, как это происходит.
Редактировать 2:
Добавлен пункт Group By. Попробуйте это.