SQL REPLACE() Kullanımı


April 2021 (0) Iptv 7/27/2024


SQL REPLACE() Kullanımı

Replace kelimesinin Türkçe ’de "yerine koymak, yerini almak, yenisi ile değiştirmek" anlamlarına gelmektedir. Yani tablomuzda bulunan bir metinsel alandaki verinin bir parçasını veya tamamını ekrana farklı biçimde yazdırabiliriz. Sadece ekrana yazdırma değil güncelleme sorgusu çalıştırarak alandaki verilerin bir kısmını değiştirebiliriz.

REPLACE() Kullanım Biçimi

REPLACE(alan_adi,degisecek_veri,yeni_veri)

Aşağıdaki gibi Ogrenciler tablomuz olsun

id Adi_Soyadi Sehir Kayit_Donemi
1 Salih ESKİOĞLU İstanbul 1
2 Ayhan Çetinkaya Kocaeli 2
3 İlhan Özlü Kahraman Maraş 2


Örnek1:
Select Adi_Soyadi, REPLACE(Sehir,'Kahraman ','K.') 
From Ogranciler

Yukarıdaki örnekte, Sehir alanındaki Kahraman Maraş verisi ekrana alınırken K. Maraş şeklinde kısaltma olarak yazılır. Bu işlem sadece ekran çıktısı yapar. Yani alandaki veri üzerinde değişiklik yapmaz. Eğer yazacağınız uygulamada verileri ekrana alırken yer sıkıntınız varsa Sehir alanını ekrana kısaltma olarak alırsanız uygulamanız ekrana sığabilir.

Çıktısı:

Adi_Soyadi Sehir
Salih ESKİOĞLU İstanbul
Ayhan Çetinkaya Kocaeli
İlhan Özlü K. Maraş

Örnek2:
Select Adi_Soyadi, REPLACE(Kayit_Donemi,'1','Güz Dönemi') 
From Personel
Where Kayit_Donemi='1'

Yukarıdaki örnekte, Kayit_Donemi alanında veriler 1 ve 2 olarak tutulduğu varsayılıyor. Böylece veritabanımızın boyutunun büyümesi engelleniyor. Veriyi ekrana taşırken  Replace komutu kullanılarak ekrana istenilen bilgi yazılmış olunur.

Çıktısı:

Adi_Soyadi Kayit_Donemi
Salih ESKİOĞLU Güz Dönemi

Örnek3:
Update Ogrenciler
Set Sehir=REPLACE(Sehir,'Kahraman','K.')

Yukarıdaki örnekte Sehir alanında bulunan Kahraman kelimesi K. olarak değiştiriliyor. Normal şartlarda Update yapısı ile belirtilen alandaki bütün değerler değiştirilirken REPLACE ile birlikte kullanıldığında alan içindeki kelimeleri, harfleri veya sayıları değiştirebiliriz.

Çıktısı:

id Adi_Soyadi Sehir Kayit_Donemi
1 Salih ESKİOĞLU İstanbul 1
2 Ayhan Çetinkaya Kocaeli 2
3 İlhan Özlü K. Maraş 2

Aşağıdaki gibi Urunler tablosunda seri numarlarının tutulduğu alanımız olsun.

Seri_No
13-34373829
12-12323123
13-45532444
12-56345324
12-43353434
12-23444224

Örnek4:

Update Urunler
Set Vergi_No=REPLACE(Seri_No , '13-' , '12-')
Where Serii_No NOT Like '12-%'

Bu örnekte normal şartlarda Seri_No alanında 13- ile başlayan kayıtlar 12- olarak değiştirilir. Ancak binlerce kaydın olduğu bir alanda sorgu yavaş işleyeceği için Where ve Not Like kullanılarak 12- ile başlamayan kayıtlar seçiliyor. Böylece kontrol edilecek olan kayıt sayısı ikiye düşmüş olur.

Çıktısı:

Seri_No
12-34373829
12-12323123
12-45532444
12-56345324
12-43353434
12-23444224


Yorum yapabilmek için giriş yapınız

Giriş Yap

Sitede Ara

En Çok Okunanlar

Android Cihazlara POP3 E-Posta Hesabı Kurulumu (1768)
Windows simgelerinde beyaz ikon sorunu ve çözümü (1340)
SQL REPLACE() Kullanımı (898)
Yerel Ağ Bağlantısına girmek istediğimde ''Bağlantı özelliklerine erişmek için yeterli yetkiniz yok.Yöneticinize başvurun'' uyarısı.. (493)
Access violation at address 0518fde4 inmodule NETINFO.dll Read of adress 00000000 (419)
CMD komutları ile Windows Aktivasyonu (375)
PatchCleaner v1.4.2.0 indir Windows Installer Temizleme Programı (361)
MailEnable Webmail Unknown or Disabled User Hatası (352)
Bedava Netflix Hesapları 2022 (Ücretsiz Premium Hesaplar) (352)
Server communication failure. Please refresh your browser and try again. (339)
There is already an object named in the database Cozum (327)
Turbobit Premium Hesaplar Bedava Güncel Üyelikler 2022 (323)
Turbobit Premium Hesaplar Güncel Liste 2022 (320)
Windows 10 Gereksiz Servislerin Kapatılması - Resimli Anlatım (299)
Yazıcı hata kodu 0x0000011b sorun ve cozumu (293)
Windows Bileşen Deposu (WinSxS) Klasörünü Temizleme (279)
Adobe After Effects CC 2019 Full İndir – v16.1.1.4 (237)
Linq ile inner Join Kullanımı (235)
ASP.NET MVC Email Doğrulama Sayfası (Verification) (234)
Dinozor Nesline Son Veren Silen Asteroit Felaketi, Nasıl Gerçekleşti? (223)
3 Adımda Server olay loglarının silinmesi (207)
Windows 10 durdurulabilecek hizmetler (189)
Bedava Turbobit Premium Hesap 2022 (%100 Güncel Hesaplar) (178)
Visual Studio 2017 Dil Ekleme/Değiştirme (175)
Fenerbahçe Beko, 2019 Final Four 'da! MAC OZETI (156)

Son Yorumlar