ORDER BY id基于IN内的id

时间:2013-11-19 09:58:55

标签: mysql sql

如何根据IN

中的id对ORDER BY id进行排序
SELECT * 
FROM mall 
WHERE mall_id IN (3331083,33310110,3331080,33310107,33310119,3331410) 
      AND mall_status='1' LIMIT 50 

结果应该是:

  1. 3331083
  2. 33310110
  3. 3331080 ....

1 个答案:

答案 0 :(得分:6)

您需要FIELD功能:

SELECT * FROM mall 
WHERE mall_id IN (3331083,33310110,3331080,33310107,33310119,3331410) 
  AND mall_status='1' 
ORDER BY 
  FIELD(mail_id, 3331083,33310110,3331080,33310107,33310119,3331410) 
LIMIT 50