SQL Insert Into Select Kullanımı , dersimizde ile sql eğitim setime devam ediyorum arkadaşlar. Bu dersimizde insert yaparken select sorgusu kullanarak bir tablodan başka bir tabloya insert yapma işlemini göreceğiz. Lafı fazla uzatmadan gelin SQL Insert Into Select Kullanımı görelim.
SQL Insert Into Select Kullanımı
Yine uydurduğum bir sorgu ile göstereyim ve üzerinde konuşalım.
Senaryomuz şöyle olsun. Elimizdeki bir excel dosyasında tüm müşterilerimizin bilgileri var diyelim. Bunu copy paste ile bir tabloya aktardık ama mevcut cari tablosuna eklememiz için düzenlememiz gerek. Bu sebeple elimizde bir cari bir de müşteriler tablosu var. Biz carileri, müşteriler tablosundan alıp cari tablosuna yazacağız.
Birde bakıyoruz ki cari tablosunda olan kolonlar müşteri tablosunda yok. Tek tek düzeltebileceğimizden çok fazla da kayıt var. Diğer türlü kayıtları da aktaramıyoruz…
insert into CARI_TANIMLARI ( cari_adi , cari_kodu , cari_adres, cari_adres2, cari_yetkili, cari_telefon, cari_fax, cari_email ) select musteri_adi , musteri_kodu , musteri_adres, '', -- musteriler tablomuzda adres2 kolonu yoktu musteri_yetkili, musteri_telefon, '', -- musteriler tablomuzda fax kolonu yoktu musteri_email from MUSTERILER
Yukarıdaki sorgu da gördüğünüz gibi. CARİ_TANIMLARI tablomuzun üzerinde sağ tık yapıp insert sorgusunu aldık. MUSTERILER tablomuzun üstünde sağ tık yapıp select sorgusunu aldık. İnsert sorgununun values komut da dahil olmaz üzere sildik ve aldığımız select sorgusunu yapıştırdık. Kolonlarımızı da eşitledikten sonra bir tablodaki verileri diğer tabloya aktarabiliyoruz.
Tabi burada iç içe select te kullanabiliriz, select sorgusunda where şartı da kullanabiliriz. Görelim
insert into CARI_TANIMLARI ( cari_adi , cari_kodu , cari_adres, cari_adres2, cari_yetkili, cari_telefon, cari_fax, cari_email ) select musteri_adi , musteri_kodu , musteri_adres, '', -- musteriler tablomuzda adres2 kolonu yoktu musteri_yetkili, musteri_telefon, (select fax_No from FAKS_NUMARALARI where fax_Cari_Kod = musteri_kodu) , musteri_email from MUSTERILER where cari_Aktif = 1
Bu şekilde de kullanabilirsiniz. Sorgu sallama sorgu olsa siz kendiniz northwind yada başka database ler kullanarak deneyebilir ve çalıştığını görebilirsiniz.
Bu, dersimizde bu kadar dostlar. Diğer derslerimizde görüşmek üzere.
Microsoft SQL Server & T-SQL Eğitim Seti ders listesi için tıklayınız.
Sağlıcakla ve Takipte Kalın.