PL / SQL块,Sql Plus ORDER BY语句在由序列填充的列上

时间:2018-03-27 11:52:34

标签: sql oracle sql-order-by sequence

有没有人知道为什么ORDER BY操作不适用于由序列填充的列?

CREATE TABLE Vehicles (
  veh_ID VARCHAR2(10),
  make VARCHAR2(30),
  PRIMARY KEY (veh_ID));

CREATE SEQUENCE veh_ID_seq
  MINVALUE 1
  START WITH 1
  INCREMENT BY 1
  CACHE 20;

我有一个名为veh_ID的列,它由一个序列填充,通过PL / SQL块递增1。填充表后,我使用此脚本:

SELECT (*) 
FROM Vehicles 
ORDER BY veh_ID; 

结果无序返回v​​eh_ID列。但是,如果我从脚本中删除ORDER BY,则会按顺序显示带有veh_ID的表。

预期输出:

veh_ID  make     
-------------------         
1       Cheverolet
2       Ford
3       Dodge
4       GMC
5       Toyota
6       Honda
7       Jeep

实际输出:

veh_ID  make     
-------------------         
6       Honda
2       Ford
3       Dodge
5       Toyota
7       Jeep
1       Cheverolet
4       GMC

0 个答案:

没有答案