Как я понимаю, ваш заказ основан на последнем разделе ваших данных, поэтому вы можете найти желаемый порядок, разделив последний раздел и упорядочив его. Следующее делает ваше желаемое:
Предполагается, что ваши данные сохранены как VARCHAR
SELECT *, SUBSTRING_INDEX(SUBSTRING_INDEX(`value`,'::',-1),':',1) as A FROM `test2` ORDER BY CAST(A AS INT)
Однако, если вы хотите сделать то же самое, что и последний раздел (A) для других разделов, когда последний раздел двух записей равен, повторите этот метод и создайте B, C, et c., для использования в order by
.