SQL Server’da Metin Parçalama Fonksiyonu
Herkese merhaba,
Bu yazıda sizlere SQL Server’da metin parçalama fonksiyonu ile bilgi vereceğim.
Diyelim elinizde bir metin var. Bu metni boşluklarına göre ya da virgüle ya da herhangi bir şeye göre (Tek karakterli olma koşuluyla) parçalamak istiyorsunuz.
İşte bu noktada aşağıdaki fonksiyon işinizi görecektir.
CREATE FUNCTION MetinParcalama
(
@STR NVARCHAR(MAX),
@DEL NCHAR(1) = ' '
)
RETURNS @RV TABLE
(
VALUE NVARCHAR(MAX)
)
AS
BEGIN
DECLARE @PART NVARCHAR(MAX);
DECLARE @POS INT;
WHILE CHARINDEX(@DEL, @STR) > 0
BEGIN
SELECT @POS = CHARINDEX(@DEL, @STR);
SELECT @PART = SUBSTRING(@STR, 1, @POS - 1);
INSERT INTO @RV
SELECT @PART;
SELECT @STR = SUBSTRING(@STR, @POS + 1, LEN(@STR) - @POS);
END;
INSERT INTO @RV
SELECT @STR;
RETURN;
END;
--Kullanımı
SELECT *
FROM dbo.MetinParcalama('Yavuz,Selim,Kart', ',');
SELECT *
FROM dbo.MetinParcalama('Yavuz Selim Kart', ' ');
Kullanımı ifadesinde görüldüğü üzere virgül ya da boşluğa göre metnimi parçalamış oldum.
Fotoğrafta sonucu görmektesiniz.
Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.