Логика для заказа по SQL

0

У меня есть таблица, которая дает результат, оставив одну из фотографий.
Однако я хотел бы получить результат, который упорядочивает:
1. сначала сравните число в поле val, данные группы которого должны быть «total».
2. тогда все данные с одинаковым значением в поле позиции получат порядок, основанный на порядке при условии 1
Правильная часть фотографии – это то, что я хочу получить. Как установить логику с помощью ORDER BY? Спасибо.

Один из подходов состоит в том, чтобы присоединиться к подзапросу, который находит итоговые значения для каждого элемента, а затем сортировать с помощью этого.

 SELECT t1.item, t1.[group], t1.val FROM yourTable t1 INNER JOIN ( SELECT item, val AS total FROM yourTable WHERE [group] = 'total' ) t2 ON t1.item = t2.item ORDER BY t2.total DESC, t1.item, CASE WHEN t1.[group] = 'total' THEN 1 ELSE 0 END, t1.[group]; 
Давайте будем гением компьютера.