按SQL Server PHP排序

时间:2014-01-09 21:36:55

标签: php sql-server

我想从16,15和17开始订购我的选择ID的结果。 我怎么能这样做? 我的选择:

SELECT id_t_produtos
FROM table 
ORDER BY nullif(id_t_produtos, 16) ASC

预期的回应:

- 16
- 15
- 17
- 1
- 2
- 3 ...

2 个答案:

答案 0 :(得分:0)

如果我理解得很好,我会做这样的事情

select ids from table
order by 
  case ids when 16 then 0 
           when 15 then 1
           when 17 then 2
           else 3
  end, 
  ids

ids替换为id_t_produtos,如果这是排序字段,则不是很清楚......

答案 1 :(得分:0)

SELECT ids 
FROM table 
ORDER BY CASE id_t_produtos
      WHEN 16 THEN 1
      WHEN 15 THEN 2
      WHEN 17 THEN 3
      WHEN 1  THEN 4
      WHEN 2  THEN 5
      WHEN 3  THEN 6
     ELSE 7 END ASC, id_t_produtos ASC