我从数据库查询一些数据我想将其中某一条信息在查出来的结果集里放在第一个位置上
比如说我要查一个班级的信息,然后把班长放在结果集的第一个位置上
比如如果结果集是一个List,就放在List的第一个位置上。请问有什么办法可以实现这样的目标???谢谢各位先!!!

解决方案 »

  1.   

    举个例子:
    SQL> select * from t2;         C          D
    ---------- ----------
             1          9
             2         10
             3         11
             4         12
             5         13已选择5行。把c=3的放在第一条显示。
    SQL> select * from t2 where c=3
      2  union all
      3  select * from t2 where c<>3;         C          D
    ---------- ----------
             3         11
             1          9
             2         10
             4         12
             5         13已选择5行。
      

  2.   

    如果返回的记录不多,还可以用order by decode(...)来做,如实现上面njhart2003的所举的例子,可以写成
    select * from t2 order by decode(c,3,1,2);
      

  3.   

    楼上的方法真妙!但不明白order by decode(c,3,1,2)的含义,
    我试了order by decode(c,3,'xx'),只要xx为非空值都可以,奇怪?
    楼上的朋友能否讲解一下,谢谢!
      

  4.   


    select c from t2  order by ( case c=3 then '0' else '1' end)
    这样做的效果会怎么样???