SQL 2008 の監査テーブルの場合、各注文が特定のステップ (新しい列として表される) にある時間を計算する必要があります。
Old New Time Entered Order Number
NULL Step 1 4/30/12 10:43 1C2014A
Step 1 Step 2 5/2/12 10:17 1C2014A
Step 2 Step 3 5/2/12 10:28 1C2014A
Step 3 Step 4 5/2/12 11:14 1C2014A
Step 4 Step 5 5/2/12 11:19 1C2014A
Step 5 Step 9 5/3/12 11:23 1C2014A
NULL Step 1 5/18/12 15:49 1C2014B
Step 1 Step 2 5/21/12 9:21 1C2014B
Step 2 Step 3 5/21/12 9:34 1C2014B
Step 3 Step 4 5/21/12 10:08 1C2014B
Step 4 Step 5 5/21/12 10:09 1C2014B
Step 5 Step 6 5/21/12 16:27 1C2014B
Step 6 Step 9 5/21/12 18:07 1C2014B
NULL Step 1 6/12/12 10:28 1C2014C
Step 1 Step 2 6/13/12 8:36 1C2014C
Step 2 Step 3 6/13/12 9:05 1C2014C
Step 3 Step 4 6/13/12 10:28 1C2014C
Step 4 Step 6 6/13/12 10:50 1C2014C
Step 6 Step 8 6/13/12 12:14 1C2014C
Step 8 Step 4 6/13/12 15:13 1C2014C
Step 4 Step 5 6/13/12 15:23 1C2014C
Step 5 Step 8 6/13/12 15:30 1C2014C
Step 8 Step 9 6/18/12 14:04 1C2014C
- ステップは連続している必要はないため、ステップ 1 はステップ 5 の後に行うことができます。
- 注文の記録は、ステップまたは注文ごとに順次保存されるのではなく、入力時間に基づいて他の注文と混合されます。注文番号、次に新規で注文されているサンプル データは正常ではなく、依存することはできません。
- 各ステップは任意の注文に対して繰り返すことができます。注文に対して繰り返す場合は、ステップごとに時間を合計します。
- Old 列の開始ステップ レコードは常に null です。
- 開始ステップは、特定の注文の New 列の値と Old 列の値の時間差として計算されます。
出力は次のように簡単です。
Order Number Step Time in Step
1C2014A Step 1 6:09