2012-05-04 86 views
0

嗨,我有一個像表這個 會員卡更新語句值

AssoicaticeCard  MainCard custID 
A      A   1 
B      B   1 
C      A   1 
AA      AA   2 
BC      BC   2 
CC      CC   2 
Ar      Ar   3 
Bs      Bs   3 
Cv      Cv   3 

現在我需要的結果來設定這樣在我的AssoicaticeCard和MainCard已被鏈接正確

我需要的結果像這樣顯示 如何寫一個更新語句此得到achived

AssoicaticeCard  MainCard custID 
A      A   1 
B      A   1 
C      A   1 
AA      AA   2 
BC      AA   2 
CC      AA   2 
Ar      Ar   3 
Bs      Ar   3 
Cv      Ar   3 

我有一個表格與數據一樣,這是不一致的,現在需要編寫一個更新狀態來解決問題。我的表有大約100萬條記錄 任何想法如何得到它achived,有這方面的幫助將是巨大

感謝 王子

+0

u需要更新語句?或者你需要以你要求的模式顯示?我感到困惑。 – sree

+0

我有一個像數據一樣的表,現在需要寫一個更新狀態來解決這個問題。我的桌子上有大約100萬條記錄 – happysmile

+0

你怎麼知道'A'是你想要的'1'而不是'B'的值?是因爲值「A

回答

0
update clubcard set Maincard = 'A' where custID = 1; 
update clubcard set Maincard = 'AA' where custID = 2; 
update clubcard set Maincard = 'Ar' where custID = 3; 
2
update T1 
set MainCard = T2.AssoicaticeCard 
from YourTable as T1 
    inner join 
     (
     select min(AssoicaticeCard) as AssoicaticeCard, 
       custID 
     from YourTable 
     group by custID 
    ) T2 
    on T1.custID = T2.CustID