以前从一个表中随机获取数据的时候,都是先把数据读取到来,
然后再在程序中来随机抽取一部分数据, 今天告诉大家一种使用 SQL 语句的方法来随机获取一部分数据
SQL Server:
--
随机获取 10 条数据
SELECT TOP 10 * FROM 表名 ORDER BY NEWID ()
SELECT TOP 10 * FROM 表名 ORDER BY NEWID ()
ORACLE:
--
随机获取 10 条数据
SELECT * FROM ( SELECT * FROM 表名 ORDER BY SYS_GUID()) WHERE ROWNUM <= 10 ;
-- 第二种方法
SELECT * FROM ( SELECT * FROM 表名 ORDER BY DBMS_RANDOM.RANDOM()) WHERE RONUM <= 10 ;
SELECT * FROM ( SELECT * FROM 表名 ORDER BY SYS_GUID()) WHERE ROWNUM <= 10 ;
-- 第二种方法
SELECT * FROM ( SELECT * FROM 表名 ORDER BY DBMS_RANDOM.RANDOM()) WHERE RONUM <= 10 ;