SQL Server’da WordWrap Fonksiyonu Yazmak

Herkese merhaba,

Bu yazıda SQL Server’da WordWrap fonksiyonu yazmak ile ilgili bilgi vermeye çalışacağım.

SQL Server’da bazı durumlarda WordWrap gibi fonksiyona ihtiyacınız olabilir. WordWrap bir metni belli bir uzunlukta keser kalanı yeni bir satırda gösterir. Süreç bu şekilde ilerler.

Aşağıdaki fonksiyonu kullanarak siz de bu işlemi rahatlıkla yapabilirsiniz.

CREATE FUNCTION [dbo].[WrapText]
(
    @Metin NVARCHAR(MAX),
    @Uzunluk INT
)
RETURNS NVARCHAR(MAX)
AS
BEGIN
    DECLARE @Sonuc AS NVARCHAR(MAX);
    SELECT @Sonuc = CASE
                        WHEN @Sonuc IS NULL THEN
                            SUBSTRING(@Metin, numara.Numara - @Uzunluk + 1, @Uzunluk)
                        ELSE
                            @Sonuc + CHAR(13) + CHAR(10) + SUBSTRING(@Metin, numara.Numara - @Uzunluk + 1, @Uzunluk)
                    END
    FROM
    (
        SELECT Numara = ROW_NUMBER() OVER (ORDER BY name)
        FROM sys.all_objects
    ) numara
    WHERE numara.Numara <= LEN(@Metin) + @Uzunluk - 1
          AND numara.Numara % @Uzunluk = 0;
    RETURN @Sonuc;
END;

--Kullanımı 

PRINT dbo.WrapText('abcdefghijklmnopqrstuvwxyz',5)

Yukarıdaki fonksiyonu oluşturup kodu çalıştırınca aşağıdakine benzer bir sonuç göreceksiniz.

SQL Server'da WordWrap Fonksiyonu Yazmak

Görüldüğü üzere girilen metin belli bir uzunlukta kesilmiş ve alt satıra geçmiş oldu.

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

213 Kez Okundu