比方从A 表 where typeid=3高效率随机抽出5条数据呢?

解决方案 »

  1.   

    select top 5 * from a where typeid=3 order by newid()
      

  2.   

    ----My SQL方法:    ----
    SELECT * FROM tb1 ORDER BY RAND() LIMIT 10;----SQL Server方法:----
    SELECT TOP 10 *  FROM tb1 ORDER BY NEWID()----Oracle 方法:   ----
    SELECT * FROM (
       SELECT * FROM emp
        ORDER BY DBMS_RANDOM.VALUE
     )
    WHERE rownum<=10;
      

  3.   

    select top 5 * from a where typeid=3 order by newid()
      

  4.   


    select top 5* from dbo.MaWorker where typeid=3 order by newid()
      

  5.   

    加上索引,随机的话用 order by newid()