如下:
SELECT id,
(CASE WHEN category_type IN (1, 2, 7, 6, 9) THEN ( SELECT count(1) FROM agent_type_1 )
ELSE ( SELECT count(1) FROM agent_type_2 ) END ) AS count
FROM product_category WHERE `status` = 2
ORDER BY FIELD(category_type, 3, 4, 8, 1, 2, 6, 7, 9), count DESC
Field函數可以幫我們做到!