有个表叫fff ,a,b,c,d是它的4列
fff(a,b,c,d)
问,显示出 以c列排序,行号大于3的记录 
该怎么写sql语句啊?

解决方案 »

  1.   

    select a,b,c,d from (select rownum rednum,fff.a a,fff.b b,fff.c c,fff.d d 
    from fff order by c)
    where rednum>3
      

  2.   

    selecct a,b,c,d from
    (select ROW_NUMBER() OVER(ORDER BY c) AS 'row',fff.a a,fff.b b,fff.c c,fff.d d
    from fff) where row>3
      

  3.   

    select tb.a,tb.b,tb.c,tb.d
    (select a,b,c,d,rownum from ffff order by c) tb
    where rownum > 4
      

  4.   

    select a,b,c,d from ( select * from 
    (select rownum as r,a,b,c,d from fff)
    where r>3)
    order by c;
      

  5.   

    select a,b,c,d,row_number() over(order by c) as r
    from fff where r > 3
      

  6.   

    select a,b,c,d,count(a) over(order by c) as r 
    from fff where r >  3
      

  7.   

    select a ,b,c ,d 
              from (select rownum ro,a,b,c,d 
                        from fff)
               where ro>3
                orderby c;
      

  8.   

    select a,b,c,d
    from (
             select row_number, *
             from fff
             where row_number > 3
             order by c
            )
      

  9.   

    大于rownum的值是取不出来的,rownum只能用于小于的
      

  10.   

    select * from fff where c not in (select c from fff where rownum<3)order by c
      

  11.   

    select *
      from (SELECT rownum xx, a ,b,c ,d  
              FROM ffff order by c) where xx >3
      

  12.   

    select a ,b,c ,d  
              from (select rownum as s,a,b,c,d  
                        from fff 
               where s> 3 )
                order by c;
      

  13.   

    行号大于3的记录  不解??orcale里面的行号好像是自动随机排序的吧,应该这样问:以c 降序排序的前三条记录这样,大家的回答才对题吧 求高手指教!!!??
      
      

  14.   


    不是!!!如下一个例子(orcale):只能用小于的情况
       select * from (select * from fff order by c) where rownum<=3;
    可以用大于的情况
       select * from 
          (select rownum myrow,a.* from
              (select * from fff order by c) a
          )
       where myrow>=3 and myrow<=5;
      

  15.   

    select * from (select rownum,a,b,c,d
    from (select a,b,c,d from fff group by a,b,c,d order by c)) 
    where rownum <=(select count(*) from fff)
    minus
    select * from (select rownum,a,b,c,d
    from (select a,b,c,d from fff group by a,b,c,d order by c)) 
    where rownum <=3
      

  16.   

    15楼正确,行号大于3不明白意思,是要显示前3条记录还是除了前三条以后的数据,
    前三条
    select * from (select * from test order by num ) where rownum<3
    后三条     
    select * from (select * from test order by num desc) where rownum<3
      

  17.   


    15楼正确,行号大于3不明白意思,是要显示前3条记录还是除了前三条以后的数据, 
    前三条 
    select * from (select * from test order by C ) where rownum <3 
    后三条      
    select * from (select * from test order by C desc) where rownum <3