我想從其他來源更新我的文檔表中的記錄。在另一個表上只有一個實例的更新記錄
文件
Name , Account Number, Date of birth
S MHLONGO , 00000 ,16/12/1986
O CHUMU , 00000 ,12/12/1986
V MBONANE , 00000 ,09/12/1986
客戶
Name, Account Number, Date of birth
S MHLONGO , 33178 ,16/12/1986
S MHLONGO , 33682 ,16/12/1986
O CHUMU , 32892 ,16/12/1986
V MBONANE , 52162 ,16/12/1986
正如你所看到的,我沒有一個帳號在Documents
鏈接,但我可以使用的是姓名和出生日期。但是,同一天可能會出現兩個或更多的S MHLONGO。所以我需要運行一個更新聲明,它將在client
中搜索姓名和出生日期,如果它只有1個條目(並且只有1個條目在客戶端中)匹配Documents
列Name and date of birth
以更新那些記錄Documents
Example
文件
Name , Account Number, Date of birth
O CHUMU , 32892 ,16/12/1986
V MBONANE , 52162 ,16/12/1986
我知道它有點冒險,我只是想知道,如果是可以做到的,以及如何將腳本是什麼樣子?
我都DB的:-)
在WHERE CLAUSE中使用子查詢,做WHERE ... AND(SELECT COUNT(*)FROM CLIENT C WHERE C.Name = D.Name AND C.DOB = D.DOB)= 1 - 檢查它給出正確的記錄首先在一個選擇,然後你可以將它添加到一個CTE,並且只需更新CTE,或者執行 - UPDATE ... WHERE - 這與EXISTS風格的子查詢類似,除非在這種情況下您的條件是1不是任何 – Cato
嗨@Andrew Deighton,我不放棄明白你想讓我做什麼,你能詳細說明一下嗎? – user3309798