2016-01-19 4 views
0

Я ищу, чтобы создать запрос, который в основном упорядочивает по категориям, заказы по определенным именам, когда это применимо, и, наконец, заказывать bvaaa_iw_bulk из всех полей bvaaa_name. Кажется, я не могу сочетать как случай, так и другие утверждения заказа. Любые идеи приветствуются.MYSQL Порядок и имя

SELECT * 
FROM wp_bvaaa_table 
WHERE bvaaa_category='3' 
ORDER BY CASE 
      WHEN bvaaa_subcategory = '2' THEN '1' 
      ELSE bvaaa_subcategory 
     END, 
ORDER BY FIELD(bvaaa_name, 'Orange', 'Brown') 
     , bvaaa_iw_bulk ASC 

ответ

0

Ключевое слово ORDER BY может использоваться только одним пользователем. Однако вы можете заказать несколько столбцов. например:

SELECT * 
FROM wp_bvaaa_table 
WHERE bvaaa_category='3' 
ORDER BY if (bvaaa_subcategory = '2', '1', bvaaa_subcategory), 
FIELD(bvaaa_name, 'Orange', 'Brown'), 
bvaaa_iw_bulk; 
+0

Я немного смущен о том, что происходит в случае if. Что такое 2 и 1? – hfw

+0

О, извините, это то же самое, что и ваш официальный CASE. то же самое – SIDU

+0

Итак, пара вопросов. Как бы вы расширили это в других случаях? 'если (bvaaa_subcategory =«2»,«1», bvaaa_subcategory), если (bvaaa_sub ...' Что касается раздела поля. Это создает заказ? Кажется, что они в конечном итоге на дне в списке. Не могли бы вы немного рассказать о том, что там происходит? Большое спасибо за вашу помощь, кстати. – hfw

Смежные вопросы