SEO (Arama Motoru Optimizasyonu) Mikro İnteraktif ÜCRETSİZ - Google Play'den İndirin

SQL'de REPLACE Fonksiyonu

SQL'de Replace fonksiyonunu örneklerle detaylandırmaya çalışalım. SQL Server, Oracle ve PostgreSQL örnekleri mevcuttur. Regular Expression (Düzenli İfade) kullanımı da içermektedir.

Replace fonksiyonu bir çok dilde "c#, java, javascript vb.." değiştirme işlemi için kullanılmaktadır. SQL karşılığının kullanımı ise şu şekildedir:
Replace Fonksiyonu Kullanım Örneği
REPLACE(ifade, değişecekifade, yeniifade)

Örnek 1: "Merhaba Serkan" cümlesindeki "Serkan" kelimesini "Ahmed" ile değiştirelim.
Örnek 1 (SQL Server)
SELECT REPLACE('Merhaba Serkan', 'Serkan', 'Ahmed')

Örnek 1 (Oracle)
SELECT REPLACE('Merhaba Serkan', 'Serkan', 'Ahmed') Deger FROM DUAL

Örnek 1 (PostgreSQL)
SELECT REPLACE('Merhaba Serkan', 'Serkan', 'Ahmed') Deger

Örnek 1 (Sonuç)
SQL'de REPLACE Fonksiyonu

Örnek 2: "12344521290" ifadesindeki "2" rakamlarını "6" ile değiştirelim.
Örnek 2 (SQL Server)
SELECT REPLACE('12344521290', '2', '6')

Örnek 2 (Oracle)
SELECT REPLACE('12344521290', '2', '6') Deger FROM DUAL

Örnek 2 (PostgreSQL)
SELECT REPLACE('12344521290', '2', '6') Deger

Örnek 2 (Sonuç)
SQL'de REPLACE Fonksiyonu

Örnek 3: "(0532) 123 45 67" ifadesindeki "(" ve ")" ifadelerini silelim.
Örnek 3 (SQL Server)
SELECT REPLACE(REPLACE('(0532) 123 45 67', '(', ''), ')', '')

Örnek 3 (Oracle)
SELECT REPLACE(REPLACE('(0532) 123 45 67', '(', ''), ')', '') Deger FROM DUAL

Örnek 3 (PostgreSQL)
SELECT REPLACE(REPLACE('(0532) 123 45 67', '(', ''), ')', '') Deger

Örnek 3 (Sonuç)
SQL'de REPLACE Fonksiyonu

Alfabetik Karakterler Harici Olanları Silelim

Bu noktada aklımıza ilk gelen şey Regular Expression (Düzenli İfadeler) gelmektedir. Kısaca SQL tarafında nasıl kullanılacağına dair örneklerle ilerleyelim.
Sadece Alfabetik Karakterler (SQL Server)
DECLARE @deger VARCHAR(100) = 'Bu Site 12 Yaşında';
DECLARE @desen VARCHAR(100) = '%[^a-zA-Z]%';
WHILE PATINDEX(@desen, @deger) > 0
BEGIN
   SELECT @deger = STUFF(@deger, PATINDEX(@desen, @deger), 1, ''); 
END
SELECT 'Bu Site 12 Yaşında' AS 'Eski İfade', @deger AS 'Yeni İfade'

Sadece Alfabetik Karakterler (Oracle)
SELECT REGEXP_REPLACE('Bu Site 12 Yaşında', '[^a-zA-Z]', '') FROM DUAL;

Sadece Alfabetik Karakterler (PostgreSQL)
SELECT REGEXP_REPLACE('Bu Site 12 Yaşında', '[^a-zA-Z]', '', 'g')

Bir tane değişken tanımladık. İçerisinde sayısal bir veri olacak şekilde. Daha sonra elimizde regex desenine uygun olacak şekilde sayısal verileri temizledik. Sonrasında ekrana eski ve yeni değerleri karşılaştırmalı bir şekilde yazdırmış olduk.
Sadece Alfabetik Karakterler (Sonuç)
SQL'de REPLACE Fonksiyonu

Sayısal Veri Harici Olanları Silelim

Bir ifade içerisinde sadece sayısal (rakam) verilerini elde etmek için gereken deseni oluşturalım.
Sadece Sayısal Karakterler (SQL Server)
DECLARE @deger VARCHAR(100) = 'SQL Dersleri 172835 defa izlenmiş';
DECLARE @desen VARCHAR(100) = '%[^0-9]%';
WHILE PATINDEX(@desen, @deger) > 0
BEGIN
   SELECT @deger = STUFF(@deger, PATINDEX(@desen, @deger), 1, ''); 
END
SELECT 'SQL Dersleri 172835 defa izlenmiş' AS 'Eski İfade', @deger AS 'Yeni İfade'

Sadece Sayısal Karakterler (Oracle)
SELECT REGEXP_REPLACE('SQL Dersleri 172835 defa izlenmiş', '[^0-9]', '') FROM DUAL;

Sadece Sayısal Karakterler (PostgreSQL)
SELECT REGEXP_REPLACE('SQL Dersleri 172835 defa izlenmiş', '[^0-9]', '', 'g')
Örnek
SQL'de REPLACE Fonksiyonu

Yorumlar

Yorum Yaz

Avatar

REKLAM

DDos Koruma, Botnet Koruma, Layer 7 Saldırı koruması, Sanal sunucu, Vds sunucu

REKLAM

Çizgi Filmler

REKLAM

Çocuk Etkinlikleri Uygulaması

EN

  • Popüler
  • Yeni
  • Son Yorum