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.

1.981 Kez Okundu

Kategoriler: