簡體   English   中英

如何使用sql驗證兩個表中的字段是否匹配

[英]How to verify if fields are matching in two tables using sql

我有兩個表:一個表具有諸如cityzipcode state字段,而第二個表具有諸如zipcode city state字段

我需要與第二張桌子進行比較

例如:

當我在第一張表上查詢“ Fresh Meadows”時,我得到了記錄數:

Table1
city            zipcode     state       
Flushing         11351        NY 
Flushing         11354        NY
Flushing         11358        NY
Flushing         11365        NY
Flushing         11366        NY
............................................... 

當我對主表運行存儲過程時,我也得到了一些記錄:

Table2
city            zipcode      state
Flushing        11370         NY
Flushing        11371         NY
Flushing        11372         NY
............................................... 

我需要編寫一個查詢來幫助我找到表1中與主表2中的郵政編碼不匹配的城市

我該怎么做?

謝謝

以下查詢在“城市”,“州”和“郵政編碼”上聯接。 如果這三個字段的組合不在表B中,它將從A返回該記錄。

SELECT A.*
FROM Table1 A
LEFT JOIN Table2 B ON
A.City = B.City AND
A.State = B.State AND
A.ZipCode = B.ZipCode
WHERE B.ZipCode IS NULL

換句話說-用列(Cities,Zipcode)-table2(Cities,Zipcode)在“ Cities”上執行table-1table-2之間的自然連接。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM