如何在 Oracle SQL 中对相关记录(员工任务关系表,哪些任务与另一个任务具有依赖关系)进行排序

问题描述 投票:0回答:1

我在 Oracle 中有一个表,其中包含一些任务及其相关任务。一些示例数据。

依赖任务 任务
任务3 任务2
任务1 任务5
任务2 任务5
任务4 任务3

从属任务必须始终在任务之前完成 我想生成上述任务的顺序,如下所示,这是任务执行的正确顺序:

所有任务已订购
任务1
任务2
任务5
任务4
任务3

请问您能提供实现此目标的方法吗?我想我必须使用 CONNECT BY 子句,但我不知道如何做到这一点。 预先感谢。

sql plsql plsql-package oracle
1个回答
0
投票

您提供的样本数据不明确,与您期望或指定的结果不符。

一般来说,该子句:

CONNECT BY PRIOR Task = DependentTask
ORDER SIBLINGS BY Task;

原则上是正确的,但考虑到上述问题,不确定它是否适合您的特定场景。

© www.soinside.com 2019 - 2024. All rights reserved.