29 Aralık 2014 Pazartesi

iki tablo arasında update işlemi

İnternette en çok karşılaştığım sorulardan biride, 2 veya daha fazla tablo arasında update işlemi nasıl yapılır.

Bunu bir örnek üzerinde görelim.

Diyeli şekildeki gibi 2 tablomuz var:



Amacımız birinci tablodaki UrunAdet kolonunu temp2 tablosu yardımı ile update etmek. temp1 deki id kolonu ile temp2 deki Urunid kolonları ortak.

update temp1
set temp1.UrunAdet = tbl.adet

from (
select Urunid,COUNT(*) as adet from temp2 group by Urunİd
) as tbl

inner join temp1

on temp1.id = tbl.Urunİd

öncelikle temp2'yi count ettim. artık elimde yeni bir tablo oluştu join işlemlerini bu 2 tablo arasında yaptım.

temp1'i yeniden sorgulayınca, güncellenmiş olduğunu gördüm.