a:select top 10 * from t order by id;b:
begin
select * from t;
end;
问题:1:为什a和b两种写法在ORACLE中都不行呢?
2:要实现a的效果该怎么写?

解决方案 »

  1.   

    select * from(select * from t order by id) where rownum <= 10;top不是oracle关键字oracle程序块中select需要使用into或者cursor
    如果返回的记录是多行那么使用cursor,如果是单行那么可以使用intoselect t.a into v_a from t;
      

  2.   

    你那是ms sql server的写法
      

  3.   

    关于限制查询数据的行数不同的数据库中对应的有不同的函数:
    在mysql 中使用:limit(i,j);
    在sql server 中使用:top i ;
    在Oracle 中使用: rownum