instr用在oracle排序中

来源:互联网 发布:mysql case when else 编辑:程序博客网 时间:2024/06/02 21:26
create table TEST
(
  A INTEGER,
  B CHAR(1)

);


insert into test (A, B)
values (3, 'b');

insert into test (A, B)
values (5, 'b');

insert into test (A, B)
values (4, 'c');

insert into test (A, B)
values (1, 'a');

insert into test (A, B)
values (2, 'a');

insert into test (A, B)
values (6, 'a');

commit;

现在要按 字段B排序, 规则是 先  b , 后c, 最后是a

原始数据:

A   B

1    a
2    a
3    b
4    c
5    b
6    a

要求排序后的结果:

A   B
3    b
5    b
4    c
1    a
2    a
6    a

语句为:

select * from test order by instr('b,c,a',b), a;




原创粉丝点击