oracle select order by 的记录顺序
密码测试 2009-12-13 05:23:40 drop table test_olap;
-- Create table
create table TEST_OLAP
(
CLASS NUMBER(1),
NAME VARCHAR2(100),
SCORE NUMBER(4,1) default 0
);
delete from test_olap;
insert into test_olap (class, name,score)values(2, 'b2', 34);
insert into test_olap (class, name,score)values(3, 'b3', 34);
commit;
select t.class, t.name, t.score
from test_olap t
where t.class > 1
order by t.score;
查询结果:
class name score
3 b3 34.0 --后插入的结果排在前面
2 b2 34.0
接下来:
delete from test_olap;
insert into test_olap (class, name, score) values (3, 'b3', 34);
insert into test_olap (class, name, score) values (2, 'b2', 34);
commit;
select t.class, t.name, t.score
from test_olap t
where t.class > 1
order by t.score;
查询结果:
class name score
2 b2 34.0 --后插入的结果排在前面
3 b3 34.0
为什么在排序的时候,后插入数据库的记录会排在前面呢?