単一の ORACLE SQL ステートメントを作成するために、あなたの助けを求めたいと思います:
以下のようにジョブテーブルを使用する
Object | Operation | Time
A | Move | 12:01
B | Move | 12:02
C | Pickup | 12:03
D | Move | 12:04
B | Pickup | 12:05
以下のように結果テーブルを取得します。
Object | Operation | Time | Cause
A | Move | 12:01 | C
B | Move | 12:02 | C
D | Move | 12:04 | B
これは、各 Move 操作の原因となった Pickup 操作を特定するためです。
「原因」列には、移動操作のすぐ隣にある時間の最も短いピックアップ ジョブ レコードのオブジェクトを含める必要があります。
以下のようにいくつかのアイデアがありますが、方法がわかりません。
-。Move 用のサブクエリと Pickup 用のサブクエリの間には、join ステートメントが必要
です。Pickup のサブクエリは、結合するムーブ レコードで分割する必要があります
-。Pickup サブクエリの各パーティションからのみトップ レコードを選択する必要があります