[英]How to compare two tables in SQL if 2 columns have the same data - Codeigniter?
[英]How to compare two tables with same columns in plsql?
我有兩個表: aanvr_omzetten
(請求)和klant
(客戶)
表的結構:
AANVR_OMZETTEN
VOORNAAM ACHTERNAAM GESLACHT GEBOORTEDATUM EMAIL
A John M 07-01-1990 v1@gmail.com
B Jaxk V 01-04-1965 v2@gmail.com
KLANT
NAAM ACHTERNAAM GESLACHT GEBOORTEDATUM EMAIL NATION BANKNR STUDY
A John M 07-01-1990 v1@gmail.com DUTCH 12 YES
B Jack M 01-04-1965 v2@gmail.com DUTCH 15 YES
這是我的代碼:
DECLARE
v_klantnummer number;
v_rekeningnummer number;
BEGIN
-- get klantnummer and rekeningid
BEGIN
select klantnummer, rekeningid into v_klantnummer, v_rekeningid from rekening where rekeningnummer = :P501_REKENINGNR and rekeningtype = 23;
EXCEPTION
when no_data_found then
raise_application_error(-20000, 'Rekeningnummer is onbekend');
END;
-- get the information of klant X with klantnummer v_klantnummer
for i in (select voornaam, achternaam, geslacht, geboortedatum, email, postcode, huisnummer, straat, plaats, nationaliteit, burgerservicenummer
from klant where klantnummer = v_klantnummer)
loop
-- compare with other table??
--
for i in (select voornaam, achternaam, geslacht, geboortedatum, email, postcode, huisnummer, straat, plaats, nationaliteit, burgerservicenummer
from aanvr_omzetten where aanvr_omzetten = :P501_aanvr_omzettennr)
-- both tables loaded but how can i compare them?
-- ONLY if the selected attributes match
INSERT etc.
我不需要比較所有列,只需比較aanvr_omzetten
klant
中的那些列,因為表klant
具有所有這些列和其他內容。
KLANT
v_klantnummer
主鍵: v_klantnummer
AANVR_OMZETTEN
主鍵:: P501_AANVR_OMZETTENNR
我只想在這些列匹配的情況下進行插入,否則會引發錯誤。
知道我該怎么做嗎?
因此,您想插入兩個命名表中都存在的某些(第三個)表值嗎? 您可以使用INTERSECT運算符通過SQL INSERT語句來執行此操作,以標識匹配的行。
insert into whatever
select VOORNAAM, ACHTERNAAM, GESLACHT, GEBOORTEDATUM, EMAIL
from AANVR_OMZETTEN
intersect
select NAAM, ACHTERNAAM, GESLACHT, GEBOORTEDATUM, EMAIL
from KLANT
;
這可能不是一個完整的解決方案(例如,它忽略了主鍵的問題)。 但是您的問題並未提供有關如何處理此類問題的任何線索。 如果您需要進一步的幫助,請澄清您的問題。
-創建僅用於顯示普通列的類型
-彈出表格類型的表格數組
-以一個循環進行迭代,例如KLANT
-foreach行檢查它是否存在於AANVR_OMZETTEN表數組中。
- 如果不; 插入; 如果是,請繼續。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.