oracle视图中怎么加order by ??

在创建视图时加入order by a1,a2,a3;
就显示ORA-00933:SQL命令未正确结束,a3后面的;加不加都是。
把order by a1,a2,a3;放在约束条件里又报:ORA-02250:约束条件名缺失或无效!!
头大了,请各位帮下忙!!
主干线信息表_View
SELECT 主干线描述表.主干线名称, 路段信息表.路段名称, 监控点类型表.监控点类型,
监控点信息表_View.监控点名称, 主干线信息表.主干线编号, 主干线信息表.路段编号, 主干线信息表.监控点编号,
主干线信息表.监控点类型编号
FROM 主干线信息表 INNER JOIN
主干线描述表 ON 主干线信息表.主干线编号 = 主干线描述表.主干线编号 INNER JOIN
监控点信息表_View ON 主干线信息表.监控点编号 = 监控点信息表_View.监控点编号 AND
主干线信息表.路段编号 = 监控点信息表_View.所属路段编号 AND
主干线信息表.监控点类型编号 = 监控点信息表_View.类型 INNER JOIN
路段信息表 ON 主干线信息表.路段编号 = 路段信息表.路段编号 INNER JOIN
监控点类型表 ON 主干线信息表.监控点类型编号 = 监控点类型表.类型编号
ORDER BY 主干线信息表.主干线编号, 主干线信息表.监控点类型编号, 主干线信息表.路段编号

oracle视图中用order by与查询表无异。

如,有视图:v_emp,查询后按照empno从大到小排序:

select * from v_emp order by empno desc;

结果:

按照empno从小到大排序:

select * from v_emp order by empno;

查询结果:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-08-02
CREATE OR REPLACE VIEW 视图名
as
select * from 表名 order by 字段1,字段2;

在pl/sql里面的sql窗口中是执行通过的,别的到没有试过。
第2个回答  2011-08-02
order by 写在最后面 如:create or replace view v_emp as select * from emp ;
select * from v_emp order by deptno;
select * from v_emp order by deptno desc;
第3个回答  2011-08-02
是你的a1, a2, a3 有问题,不是Order by的原因
第4个回答  2011-08-04
写在select语句后面啊,就和你直接用select一样写啊。你应该把整段都贴出来,否则别人不知道你哪里错啊。本回答被提问者采纳
相似回答