2017-04-05 81 views
-1

我創建了三個表Table1,Table2和Table3。我想比較3個SQL Server表

  • 表1我有3列CodeName & Cityid
  • 表2我有2列Code & Name
  • 表3我有2列Code & Cityid

在這些第一,我必須比較Table1.NameTable2.Name

如果該條件滿足,則取Table2.Code並將其與Table3.Code進行比較,然後取Table3.Cityid並將其與Table1.Cityid進行比較。

如果滿足所有條件,則將Table2.Code插入Table1.Code

請任何人幫助我寫下查詢我是新的SQL。

在此先感謝。

請參閱輸入採樣數據

table1的 |名稱|碼| cityid | | ------------- | --------- | ------ | | Ersan | NULL | 1 | | Plovdiv | NULL | 3 |

table2 | name | code | | ------------- | --------- | | Ersan | 401065 | | Ersan | 401065 | |普羅夫迪夫| 143967 | |普羅夫迪夫| 143967 | |普羅夫迪夫| 143967 |

table3 | cityid | code | | --------- | --------- | | 1 | 401065 | | 3 | 143967 |

,輸出會是這樣的:

table1的 |名稱|碼| cityid | | ------------- | --------- | ------ | | Ersan | 401065 | 1 | |普羅夫迪夫| 143967 | 3 |像下面

table__1

+0

沒有任何示例數據,它真的很難遵循你實際上想要實現的。 –

+0

對不起,剛纔我添加了一個樣本數據圖像。請參考.Thankyou –

+0

將樣本數據添加爲圖像並不是很有幫助。請嘗試以文本格式添加示例數據,因爲使用這些數據更容易。 –

回答

0

看看我創建的樣本數據將

code name city 
0001 a  p 
002  b  c1 
003  c  c2 
004  d  c4 
005  e  c5 
006  f  c6 
007  g  c7 
008  h  c8 
009  i  c9 

table__2將

code name city 
    0001 a  p 
    002  b  c1 
    003  c  c2 
    004  d  c4 
    005  e  c5 
    006  f  c6 
    007 wrongname c7 
    wrongcode h  c8 
    009  i wrongcity 

現在查詢插入記錄將

insert into table__3 
select table__1.code,table__1.name,table__1.city 
from table__2 inner join table__1 
on table__2.name=table__1.name and table__2.code=table__1.code and table__2.city=table__1.city 

如果有任何問題評論如下... 最好的運氣...

+0

謝謝你,但它不適合我。請參閱我的文章中的示例數據。我需要在table1中插入代碼,其中table1.name = table2.name。如果滿足這個條件取table2.code並在table.code中比較。如果第二個條件也滿足,則取table3.cityid並將其與table1.cityId進行比較,然後在table1中插入table2.code。 –

+0

以文本格式添加示例數據... –

+0

並添加預期輸出以及 –