关于ORACLE中CREATE VIEW 的时候用ORDER BY 和 WITH READ ONLY 的问题

今天建立视图时遇到如下问题。

 

按照如下方式建立报ora-00933错误:

 

CREATE OR REPLACE VIEW AREA_TOWN AS
SELECT a.area_name,a.cuid
FROM AREA a
ORDER BY a.area_name
WITH READ ONLY;

 

经过几次测试发现只要ORDER BY 和WITH READ ONLY同时出现就会报这个错。

 

后来在网上搜索了相关的信息,说是只需调整一下SQL的写法即可。如下:

CREATE OR REPLACE VIEW AREA_TOWN AS
SELECT area_name,cuid FROM (SELECT a.area_name,a.cuid
FROM AREA a
ORDER BY a.area_name)
WITH READ ONLY;

 

经过自己测试了一下,还真是这样,当然,上面的sql语句是网上的,我自己的语句就不发出来了,呵呵~

 

 

你可能感兴趣的:(order by)