いつもお世話になっております。再度、解決できないSQLの問題が発生してしまいました。
識者の方よろしくお願いします。
環境:Oracle10g ストアドプロシージャ
(1)参照テーブル
TEMP1(キー:契約番号、連番),TEMP2(キー:連番、契約種類CD),
タイプマスタ(キー:契約種類CD、タイプCD)
(2)追加テーブル対象
契約明細(キー:契約番号,タイプCD)
実施したい事は(2)に保存されていない、(1)のデータを
(2)に入れたいです。(1)のTEMP1、TEMP2には追加更新対象のデータが保存されています。
タイプマスタの参照はTEMP2にはタイプCDが存在していない為、
TEMP2.契約種類CDからタイプCDを導出しています。
実現出来ていないことなのですが
NOT EXISTSの結果が伴わないので
INSERTが正しく出来ずに困っております。
INSERT INTO 契約明細 (
契約番号
,タイプCD
)
SELECT distinct
A.契約番号
,C.タイプCD
FROM TEMP1 A INNER JOIN
TEMP2 B
ON A.連番 = B.連番
INNER JOIN タイプマスタ C ON B.契約種類CD = C.契約種類CD
LEFT JOIN 契約明細 D ON C.タイプCD = D.タイプCD
WHERE NOT EXISTS(
select 'X' FROM TEMP1 INNER JOIN
TEMP2
ON TEMP1.連番 =TEMP2.連番
INNER JOIN タイプマスタ ON タイプマスタ.契約種類CD = TEMP2.契約種類CD AND タイプマスタ.契約種類CD = C.契約種類CD
INNER JOIN 契約明細 ON 契約明細.タイプCD = タイプマスタ.タイプCD AND 契約明細.タイプCD = D.タイプCD
) ;
よろしくお願いいたします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんな感じでどうでしょうか?
insert into 契約明細
select distinct temp1.契約番号, タイプマスタ.タイプCD
from temp1
inner join temp2 on (temp1.連番 = temp2.連番)
inner join タイプマスタ on (temp2.契約種類CD = タイプマスタ.契約種類CD)
where not exists (
select * from 契約明細
where 契約明細.契約番号 = temp1.契約番号
and 契約明細.タイプCD = タイプマスタ.タイプCD);
それぞれのテーブルの関連がよくわからないので、これでは上手くいかないようならそれも提示してください。
distinctが必要だということは1対1ではないのですかね。
具体的なサンプルデータもある方が回答するかたが分かりやすいと思いますよ。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- セキュリティソフト 「ウィルスに感染しています」Microsoftって? 2 2022/06/21 10:37
- 音楽・動画 スマホが有っても 11 2023/07/15 02:44
- Oracle 下記のsqlで取得されるレコード以外を取得する方法ありますでしょうか。 SELECT B.番号, B 2 2022/04/20 23:21
- docomo(ドコモ) 携帯の新規 データ!バックアップ移行のやり方!詳しい方いますか? 2 2022/12/26 22:42
- その他(車) 車のオプションについてです 先日シエンタハイブリッド(Gグレード)を契約しました。 オプションについ 6 2023/03/20 13:10
- docomo(ドコモ) ahamo契約中の方に質問です ahamoを契約すると契約確認のハガキ(サンキューレター?)が送られ 1 2023/02/14 07:00
- その他(保険) ファミリーバイク特約について。基本、契約している自動車と同じ保証と思いますが人身傷害が、あるタイプと 1 2022/10/30 23:03
- 国産車 自動車契約について 9 2023/05/20 10:00
- 生命保険 生命保険の一般課程試験の問題です。 1 2022/04/02 20:33
- docomo(ドコモ) 解約金のこと 4 2023/03/07 15:12
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
東京電力パワーグリッド株式会...
-
月に27万円ほど払ってやれば性...
-
質問です。第一生命を辞めたい...
-
契約社員の契約業務内容外の仕...
-
数学、割引率の問題【おそらく...
-
業務委託での仕事について
-
パートナーシップ契約の意味を...
-
契約の締結・終結の意味
-
vio脱毛についてです 8年くらい...
-
障害者雇用のカウント方法につ...
-
仕事における越権行為とは何が...
-
OCN モバイル ONE で OCNのSIM...
-
生命保険の女性外交員と食事(...
-
雇用期間の定めあり(4ヶ月以上)...
-
NTTコミュニケーションズから謎...
-
PS5で10G
-
助けて下さい!!
-
契約書の書き方を教えてくださ...
-
皆さんは通信速度0になった時、...
-
三者契約(三社??)
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
東京電力パワーグリッド株式会...
-
質問です。第一生命を辞めたい...
-
PS5で10G
-
仕事における越権行為とは何が...
-
”請負”の反対語は?
-
聞こえるように悪口を言われた...
-
助けて下さい!!
-
雇用期間の定めあり(4ヶ月以上)...
-
芸能事務所のマネジメント料っ...
-
契約社員の契約業務内容外の仕...
-
契約の締結・終結の意味
-
生命保険の女性外交員と食事(...
-
傭船契約のRecapとは
-
月に27万円ほど払ってやれば性...
-
働いているところの校長先生が...
-
転職するべきか悩んでいます。
-
20代でも使えなかったら、契約...
-
最近マックでバイトを始めた者...
-
自己破産するとWi-Fiも契約でき...
-
三者契約(三社??)
おすすめ情報