1.実現したいこと: SQLでRN列の採番をしたいです。(row_numberの使い方を教えてください)
下表のSQLテーブルのイメージは、SQL SERVERのテーブルからSELECTしたものです。
ここからRN列を導きたいが下記の条件があります。
1)RN列は、SBL列のa,bレコードのグループが変わった場合は、1から始まります。
2)SSI列は、LN列とLN2列の組み合わせになり、RN列は、LN列、LN2列の組み合が変わった場合にインクリメントされます。
3)RN列は、LN2列を考慮しない場合は、インクリメントされずにRN_NG列となります。
2.テーブルのイメージ…SQL SERVER(2017スタンダード)から得たいのは、下表のRN列です。
| DATE | PART | SBL | SSI | SSI_REC_NO1 | SSI_REC_NO2 | LN | LN2 | RN | RN_NG |
| 20240101 | P1 | a | S1 | 1 | 1 | L1 | L1 | 1 | 1 |
| 20240101 | P1 | a | S1 | 1 | 2 | L1 | L1 | 2 | 2 |
| 20240101 | P1 | a | S2 | 2 | 1 | L1 | L1 | 1 | 1 |
| 20240101 | P1 | a | S2 | 2 | 2 | L1 | L1 | 2 | 2 |
| 20240101 | P1 | a | S3 | 3 | 1 | L1 | L2 | 3 | 3 |
| 20240101 | P1 | a | S3 | 3 | 2 | L1 | L2 | 4 | 4 |
| 20240101 | P1 | a | S4 | 4 | 1 | L2 | L2 | 5 | 3 |
| 20240101 | P1 | a | S4 | 4 | 2 | L2 | L2 | 6 | 4 |
| 20240101 | P1 | a | S5 | 5 | 1 | L2 | L2 | 5 | 3 |
| 20240101 | P1 | a | S5 | 5 | 2 | L2 | L2 | 6 | 4 |
| 20240101 | P1 | a | S6 | 6 | 1 | L2 | L2 | 5 | 3 |
| 20240101 | P1 | a | S6 | 6 | 2 | L2 | L2 | 6 | 4 |
| 20240101 | P1 | b | S7 | 1 | 1 | L3 | L3 | 1 | 1 |
| 20240101 | P1 | b | S7 | 1 | 2 | L3 | L3 | 2 | 2 |
| 20240101 | P1 | b | S8 | 2 | 1 | L3 | L3 | 1 | 1 |
| 20240101 | P1 | b | S8 | 2 | 2 | L3 | L3 | 2 | 2 |
| 20240101 | P1 | b | S9 | 3 | 1 | L3 | L4 | 3 | 3 |
| 20240101 | P1 | b | S9 | 3 | 2 | L3 | L4 | 4 | 4 |
| 20240101 | P1 | b | S10 | 4 | 1 | L4 | L4 | 5 | 3 |
| 20240101 | P1 | b | S10 | 4 | 2 | L4 | L4 | 6 | 4 |
| 20240101 | P1 | b | S11 | 5 | 1 | L4 | L5 | 7 | 5 |
| 20240101 | P1 | b | S11 | 5 | 2 | L4 | L5 | 8 | 6 |
| 20240101 | P1 | b | S12 | 6 | 1 | L6 | L6 | 9 | 7 |
| 20240101 | P1 | b | S12 | 6 | 2 | L6 | L6 | 10 | 8 |
| 20240101 | P1 | b | S13 | 7 | 1 | L6 | L6 | 11 | 7 |
| 20240101 | P1 | b | S13 | 7 | 2 | L6 | L6 | 12 | 8 |
| 20240101 | P1 | b | S14 | 8 | 1 | L6 | L6 | 11 | 7 |
| 20240101 | P1 | b | S14 | 8 | 2 | L6 | L6 | 12 | 8 |
3.ツール:Vb.net,SQL Server2017スタンダードを用いております。
回答1件
あなたの回答
tips
プレビュー