У меня есть комплекс order by
с case
выражением.
ORDER BY CASE WHEN field_1 = ? then 0
WHEN field_2 = ? then 1 ELSE 3 end ASC
Я хочу заказать внутренние результаты на field_3
например мой стол -
index | field_1 | field_2 | field_3
0 | car | red | 2
1 | hat | red | 5
2 | red | house | 4
и ? = red
Таким образом, индексы 0 и 1 получат 1, а индекс 2 получит 0 из выражения case.
и я хочу заказать снова field_3
, но порядок должен быть только между одинаковыми значениями.
поэтому индекс 0,1 должен order by field_3
Есть предложения, как этого добиться?
Результат должен быть -
индекс 2 -> индекс 0 -> индекс 1