首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从oracle中随机选择样本时两个查询之间的差异

从oracle中随机选择样本时两个查询之间的差异
EN

Stack Overflow用户
提问于 2009-07-21 14:46:51
回答 4查看 1.9K关注 0票数 2

This question回答了如何从oracle中随机选择样本的问题,这正是我所需要的。然而,我不明白这种解决方案之间的区别

代码语言:javascript
复制
SELECT  *
FROM    (
        SELECT  *
        FROM    mytable
        ORDER BY
                dbms_random.value
        )
WHERE rownum <= 1000

像这样的东西

代码语言:javascript
复制
select * from mytable where rownum<=1000 order by dbms_random.value

当我使用第一种方法查询时,它需要很长时间(仍然没有完成),但当我使用第二种方法查询时,它非常快,但结果似乎不是随机的。

感谢你们能提供的建议和方向。

谢谢!

JC

EN

Stack Overflow用户

发布于 2009-07-21 14:55:00

第二个将返回1000条记录,并随机对它们进行排序。在第一个查询中,它花费了更多的时间,因为它对所有记录进行排序,然后提取在前1000个位置随机结束的1000个塔楼。

我担心,不管慢不慢,您都需要像第一个查询这样的东西。

票数 0
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1159661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档