回答編集履歴
4
推敲
answer
CHANGED
@@ -20,7 +20,7 @@
|
|
20
20
|
> 部署単位で見た際、削除フラグが0(有効)のものが存在しない場合にファイル出力をします。
|
21
21
|
|
22
22
|
`TRANS_TBL`に存在しない`APPLI_TRANS_TBL`の抽出という事なら以下で良いかと思います。
|
23
|
-
※TRANS_TBLのキーは地域コード、会社コード、部署コード、担当者コードだとして
|
23
|
+
※`TRANS_TBL`のキーは地域コード、会社コード、部署コード、担当者コードだとして
|
24
24
|
```SQL
|
25
25
|
SELECT distinct 地域コード, 会社コード, 部署コード, 担当者コード
|
26
26
|
FROM APPLI_TRANS_TBL as t1
|
3
追記
answer
CHANGED
@@ -13,4 +13,19 @@
|
|
13
13
|
and not exists(
|
14
14
|
select 1 from TRANS_TBL where 地域コード='1000' and 会社コード='200' and 部署コード='10'
|
15
15
|
)
|
16
|
+
```
|
17
|
+
追記
|
18
|
+
---
|
19
|
+
> 変更内容のファイル出力の条件分岐に必要となるSQLになります。
|
20
|
+
> 部署単位で見た際、削除フラグが0(有効)のものが存在しない場合にファイル出力をします。
|
21
|
+
|
22
|
+
`TRANS_TBL`に存在しない`APPLI_TRANS_TBL`の抽出という事なら以下で良いかと思います。
|
23
|
+
※TRANS_TBLのキーは地域コード、会社コード、部署コード、担当者コードだとして
|
24
|
+
```SQL
|
25
|
+
SELECT distinct 地域コード, 会社コード, 部署コード, 担当者コード
|
26
|
+
FROM APPLI_TRANS_TBL as t1
|
27
|
+
WHERE 削除フラグ='0'
|
28
|
+
and not exists(
|
29
|
+
select 1 from TRANS_TBL where 地域コード=t1.地域コード and 会社コード=t1.会社コード and 部署コード=t1.部署コード and 担当者コード=t1.担当者コード
|
30
|
+
)
|
16
31
|
```
|
2
修正
answer
CHANGED
@@ -10,4 +10,7 @@
|
|
10
10
|
SELECT 地域コード, 会社コード, 部署コード, 担当者コード, 削除フラグ
|
11
11
|
FROM APPLI_TRANS_TBL
|
12
12
|
WHERE 申込番号='2018102101' and 地域コード='1000' and 会社コード='200' and 部署コード='10' and 削除フラグ='0'
|
13
|
+
and not exists(
|
14
|
+
select 1 from TRANS_TBL where 地域コード='1000' and 会社コード='200' and 部署コード='10'
|
15
|
+
)
|
13
16
|
```
|
1
推敲
answer
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
**UNION** する前に **Not Exists**する方が効率的です。
|
2
2
|
```SQL
|
3
3
|
SELECT 地域コード, 会社コード, 部署コード, 担当者コード, 削除フラグ
|
4
|
-
FROM TRANS_TBL
|
4
|
+
FROM TRANS_TBL
|
5
5
|
WHERE 地域コード='1000' and 会社コード='200' and 部署コード='10' and 削除フラグ='0'
|
6
6
|
and not exists(
|
7
7
|
select 1 from APPLI_TRANS_TBL where 地域コード='1000' and 会社コード='200' and 部署コード='10' and 削除フラグ='1'
|