SELECT查询语句中使用PARALLEL提示的作用是什么?
SQL中PARALLEL提示的作用说明
你给出的是Oracle数据库的SQL优化提示语法,PARALLEL提示的具体目的如下:
- 强制优化器对
lds_order_status表的相关查询操作启用并行执行模式,指定并行度为16,即同时调度16个并行从属进程协同完成整个查询任务,替代默认的单进程执行逻辑。 - 并行执行时,会将
lds_order_status表的待扫描数据块、后续的status='CLOSED'条件过滤、PO_NO分组、排序这些操作,拆分给16个进程分别处理,最终合并结果,通常用于该表为千万级以上的大表场景,大幅降低大查询的整体耗时。 - 该提示的优先级高于数据库全局的默认并行度参数、以及
lds_order_status表自身定义的并行度属性,会强制按指定的16并行度执行。
额外说明:如果
lds_order_status数据量很小,启用并行执行反而会因为进程调度、进程间通信的额外开销,导致查询耗时比单进程执行更长,仅建议对大表的复杂查询使用该提示。
内容的提问来源于stack exchange,提问作者Abinnaya
相关产品推荐
相关产品推荐

