最后排序:1 admin 7 admin 3 user 4user 6user 2super user 5super user
create table aaa( did number(2), dname varchar2(10) ); insert into aaa values(1,'admin'); insert into aaa values(2,'super user'); insert into aaa values(3,'user'); insert into aaa values(4,'user'); insert into aaa values(5,'super user'); insert into aaa values(6,'user'); insert into aaa values(7,'admin');
SQL> SQL> create table aaa( 2 did number(2), 3 dname varchar2(10) 4 ); Table created SQL> begin 2 insert into aaa values(1,'admin'); 3 insert into aaa values(2,'super user'); 4 insert into aaa values(3,'user'); 5 insert into aaa values(4,'user'); 6 insert into aaa values(5,'super user'); 7 insert into aaa values(6,'user'); 8 insert into aaa values(7,'admin'); 9 end ; 10 / PL/SQL procedure successfully completed SQL> select * from aaa 2 order by decode(dname,'admin',1,'user',2,'super user',3) , did ; DID DNAME --- ---------- 1 admin 7 admin 3 user 4 user 6 user 2 super user 5 super user 7 rows selected SQL> drop table aaa ; Table droppedSQL>
这个估计是作业,或者是两个系统中间数据的传输,现实的业务系统肯定会有另一个维表,记录这些 admin user ,维表中有排序字段;
7 admin
3 user
4user
6user
2super user
5super user
did number(2),
dname varchar2(10)
);
insert into aaa values(1,'admin');
insert into aaa values(2,'super user');
insert into aaa values(3,'user');
insert into aaa values(4,'user');
insert into aaa values(5,'super user');
insert into aaa values(6,'user');
insert into aaa values(7,'admin');
SQL>
SQL> create table aaa(
2 did number(2),
3 dname varchar2(10)
4 );
Table created
SQL> begin
2 insert into aaa values(1,'admin');
3 insert into aaa values(2,'super user');
4 insert into aaa values(3,'user');
5 insert into aaa values(4,'user');
6 insert into aaa values(5,'super user');
7 insert into aaa values(6,'user');
8 insert into aaa values(7,'admin');
9 end ;
10 /
PL/SQL procedure successfully completed
SQL> select * from aaa
2 order by decode(dname,'admin',1,'user',2,'super user',3) , did ;
DID DNAME
--- ----------
1 admin
7 admin
3 user
4 user
6 user
2 super user
5 super user
7 rows selected
SQL> drop table aaa ;
Table droppedSQL>
这个估计是作业,或者是两个系统中间数据的传输,现实的业务系统肯定会有另一个维表,记录这些 admin user ,维表中有排序字段;