0

我有两个数据库。1. 甲骨文 2. SQL Server

两者都有同一张桌子TABLE。我必须在限制中获取数据,按某些列的顺序,在表中并验证它(彼此相对)。假设限制是 100 到 150

对于我正在使用的 SQL

select * 
from (
    select row_number() over (order by specific_column) as row, *  
    from  Table
) as t
where row between 100 and 150

对于我正在使用的 Oracle

select * 
from (
      select columnname, rownum r 
      from Table
 ) a where a.r>=100 and a.r<=150 order by specific_column

但是我得到的结果在每个输出中都完全不同。

可能是orderby首先在sqlserver中工作,然后通过rownum获取它,反之亦然。

PS:请注意,我使用的oracle版本是7.3.x,不支持子查询中的order by。

4

0 回答 0