回答編集履歴
2
簡単なの思いついたので変えました
test
CHANGED
@@ -1,35 +1,9 @@
|
|
1
|
-
要は、2テーブルの担当者コード、削除フラグを絞り込みの条件として、マスタ情報を抽出するのですよね。
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
なので、2テーブルの担当者コードをキーに削除フラグを集計して、絞り込み条件が得られるようなSQLを書きます。それを、マスタの抽出の絞り込み条件とすればよいです。
|
6
|
-
|
7
|
-
|
8
|
-
|
9
1
|
```sql
|
10
2
|
|
11
|
-
select * from TRANS_TBL as
|
3
|
+
select * from TRANS_TBL as A
|
12
4
|
|
13
|
-
where
|
5
|
+
where A.'担当者コード' not in (select B.'担当者コード' from TRANS_TBL as B where B.'削除フラグ' = 1)
|
14
6
|
|
15
|
-
select C.'担当者コード' from
|
16
|
-
|
17
|
-
(
|
18
|
-
|
19
|
-
select A.'担当者コード', A.'削除フラグ' from TRANS_TBL as A
|
20
|
-
|
21
|
-
union
|
22
|
-
|
23
|
-
select
|
7
|
+
and A.'担当者コード' not in (select C.'担当者コード' from APPLI_TRANS_TBL as C where C.'削除フラグ' = 1)
|
24
|
-
|
25
|
-
) as C
|
26
|
-
|
27
|
-
group by C.'担当者コード'
|
28
|
-
|
29
|
-
having sum(C.'削除フラグ') = 0
|
30
|
-
|
31
|
-
)
|
32
|
-
|
33
|
-
|
34
8
|
|
35
9
|
```
|
1
sqlを追記しました。
test
CHANGED
@@ -3,3 +3,33 @@
|
|
3
3
|
|
4
4
|
|
5
5
|
なので、2テーブルの担当者コードをキーに削除フラグを集計して、絞り込み条件が得られるようなSQLを書きます。それを、マスタの抽出の絞り込み条件とすればよいです。
|
6
|
+
|
7
|
+
|
8
|
+
|
9
|
+
```sql
|
10
|
+
|
11
|
+
select * from TRANS_TBL as D
|
12
|
+
|
13
|
+
where D.'担当者コード' in (
|
14
|
+
|
15
|
+
select C.'担当者コード' from
|
16
|
+
|
17
|
+
(
|
18
|
+
|
19
|
+
select A.'担当者コード', A.'削除フラグ' from TRANS_TBL as A
|
20
|
+
|
21
|
+
union
|
22
|
+
|
23
|
+
select B.'担当者コード', B.'削除フラグ' from APPLI_TRANS_TBL as B
|
24
|
+
|
25
|
+
) as C
|
26
|
+
|
27
|
+
group by C.'担当者コード'
|
28
|
+
|
29
|
+
having sum(C.'削除フラグ') = 0
|
30
|
+
|
31
|
+
)
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
```
|