SQL Server’da Inner Join ile Update İşlemi
Herkese merhaba,
Bu yazıda sizlere SQL Server’da Inner Join ile update işleminin nasıl yapılacağını göstereceğim.
Yapacağımız işlemde tablolar arasında bir foreign key constraint ilişkisi mevcut değil. Güncelleme yapacağımız tablolarımızda ise Null alanlar mevcut. Aşağıdaki örneği inceleyelim.
--Database oluşturulması CREATE DATABASE Ornek GO --Database kullanımı USE Ornek GO --Tabloların oluşturulması CREATE TABLE Meyveler ( Id INT, MeyveAd Varchar( 100 ) ); CREATE TABLE Meyveler2 ( Id2 INT, MeyveAd2 Varchar( 100 ) ); --Tablolara veri eklenmesi Insert into Meyveler Values ( 1 ,'Mango' ), ( 2 , 'Üzüm' ), ( 3, 'Muz'); Insert into Meyveler2 Values ( 1 ,'Mango' ), ( 2 , NULL ), ( 3, NULL ); SELECT * FROM Meyveler SELECT * FROM Meyveler2 --Inner join ike güncelleme işlemi UPDATE Meyveler2 SET Meyveler2. MeyveAd2 = Meyveler.MeyveAd FROM Meyveler2 INNER JOIN Meyveler ON Meyveler.Id = Meyveler2.Id2 WHERE MeyveAd2 IS null --Tabloların listelenmesi SELECT * FROM Meyveler SELECT * FROM Meyveler2
Burada Meyveler2 tablomuz içerisinde Null alanlar mevcut. Bu alanları Id alanına göre eşleyerek where şartında Null olanları Meyveler1 tablosuna göre güncelliyoruz. Güncelleme işlemlerinde Begin Tran ifadesini sorgu başına koymayı unutmayın. Hata alınca Rollback diyerek işlemi geri alabilirsiniz. Ayrıca yazdığınız sorguları kontrol ederek yazmayı da unutmayın.
Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.