Herkese merhaba,

Bu yazıda SQL Server’da sayısal olmayan karakterleri temizleyen fonksiyon hakkında bilgi vereceğim.

SQL Server’da bazı durumlarda sayısal bir metin üzerindeki parantez, tire vs gibi şeylerin kaldırılmasını isteyebiliriz.

Aşağıdaki fonksiyon yardımıyla bu işlemi rahatlıkla yapabilirsiniz.

CREATE FUNCTION SayisalOlmayanKarakterleriKaldirmak
(
    @Icerik NVARCHAR(512)
)
RETURNS NVARCHAR(512)
AS
BEGIN
    DECLARE @TemizlenmisIcerik NVARCHAR(512);
    SELECT @TemizlenmisIcerik = @Icerik;
    WHILE PATINDEX('%[^0-9]%', @TemizlenmisIcerik) > 0
    SELECT @TemizlenmisIcerik
        = REPLACE(@TemizlenmisIcerik, SUBSTRING(@TemizlenmisIcerik, PATINDEX('%[^0-9]%', @TemizlenmisIcerik), 1), '');
    RETURN @TemizlenmisIcerik;
END;

--Kullanımı

SELECT dbo.SayisalOlmayanKarakterleriKaldirmak('0(544)-573-25-84');

Kodu çalıştırdığınızda aşağıdaki gibi bir sonuç alacaksınız.

SQL Server’da Sayısal Olmayan Karakterleri Temizleyen Fonksiyon

Görüldüğü üzere sayısal olmayan karakterler temizlenmiş oldu.

Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.

327 Kez Okundu

Kategoriler: