只使用SQL语句,写一句能查询出一次性返回5条记录,只要5条记录,可以随机。
请会做的人,懂的人帮忙。谢谢。我明天再来。

解决方案 »

  1.   

    啥意思啊,没看明白,取5条记录?
    select * from table where rownum<6;
      

  2.   

    select * from tab where rownum < 6
      

  3.   

    高手帮忙。Orcale中,一次性查找出5条记录,可以随机取得,不允许使用ID,如:id<6,id<=5等,有没有这样的SQL语,关键一:在Orcale中,第二:取5条,随便取。
    正确的一定送分。
      

  4.   

    select top 5 * from tablename order by newid()
      

  5.   

    第二:取5条,随便取。oracle能做到嘛?
      

  6.   

    select * from (select rownum rn,a.* from test_tab) wh
    re rn >=11 and rn <=15
      

  7.   

    同意楼上
    通过修改rn >=11 and rn <=15可以随意选择五条
    如果使用存储过程,你可以将此范围作为参数输入
      

  8.   

    select * from 
    (
    select a.*,DBMS_RANDOM.value() from  tab_t a order by DBMS_RANDOM.value()
    )
    where rownum<6
      

  9.   

    select * from (select rownum rn,a.* from test_tab) where rn between(3,8);
      

  10.   

    oracle只能取“前n条”,一般通过 rownum 得到。 
    如果想取 "第m-n条",只能是先取出“前n条”,然后减去“前m条”,数据量多的话性能会有问题。具体sql参见楼上几个写的了
      

  11.   

    select * from (select * from tablename order by sys_guid()) where rownum < N;
    select * from (select * from tablename order by dbms_random.value) where rownum< N;