小编Ale*_*rov的帖子

对Oracle数据库使用ORDER BY dbms_random.value时的性能问题

我需要从表中获取1000个随机行,并找到Oracle的解决方案.但是,如果我在从包含大量行的表中检索数据时使用此查询,则最多需要3分钟才能完成:

SELECT column FROM
( SELECT column FROM table
ORDER BY dbms_random.value )
WHERE rownum <= 1000
Run Code Online (Sandbox Code Playgroud)

它发生是因为所有行都被选中,然后当我只需要1000时,所有行都按随机值排序.这样的问题是否有解决办法?也许使用dbms_random.value以及一些将选择随机行的游标.

sql oracle performance cursor

6
推荐指数
1
解决办法
3250
查看次数

标签 统计

cursor ×1

oracle ×1

performance ×1

sql ×1