MALZEME (Transact-sql)
MALZEME işlevi, başka bir dizeye için bir dize ekler. Bu başlangıç pozisyonunda ilk dizedeki karakter belirlenen bir süre siler ve sonra başlangıç pozisyonunda ilk dizenin ikinci dize ekler.
Transact-SQL Sözdizim Kuralları
Sözdizimi
STUFF ( character_expression , start , length , replaceWith_expression )
Bağımsız değişkenler
character_expression
Olan bir ifade karakter veri. character_expressionbir sabit, değişken veya sütun karakter veya ikili veri olabilir.start
Silme ve ekleme başlatmaya konumunu belirten bir tamsayı değeridir. Eğer startya lengthise negatif, boş bir dize döndürülür. Eğer startilk daha uzun character_expression, boş bir dize döndürülür. startolabilir bigint.length
Silinecek karakter sayısını belirten bir tamsayıdır. Eğer lengthilk daha uzun character_expressionson son karakter için silme oluşur character_expression. lengtholabilir bigint.replaceWith_expression
Olan bir ifade karakter veri. character_expressionbir sabit, değişken veya sütun karakter veya ikili veri olabilir. Bu ifade yerini alacak lengthkarakter character_expressionbaşında start.
Dönüş Türleri
Döner karakter verileri, character_expressiondesteklenen karakter veri türlerinden biri. İkili veriyi döndürür character_expressiondesteklenen ikili veri türlerinden biri.
Açıklamalar
Başlangıç konumu ya da uzunluk negatifse veya başlama pozisyonu ilk dizenin uzunluğundan büyükse, boş bir dize döndürülür. Başlangıç konumu 0 ise, null değeri döndürülür. Silinecek uzunluğu Birinci dizeyi uzunsa, o birinci dizedeki ilk karakter silinir.
Sonuç değeri dönüş türü tarafından desteklenen en çok büyükse, bir hata oluşturulur.
İkincil Karakterler (Yedek Çiftler)
sc alfabe, kullanırken de character_expressionve replaceWith_expressionvekil çifti içerebilir. Uzunluk değiştirgesi her vekil sayılır character_expressiontek bir karakter olarak.
Örnekler
Aşağıdaki örnek, üç karakter ilk dizeden silerek oluşturulan bir karakter dizesini verir abcdef, konumdan başlayarak 2, de bve ikinci dize ekleme silme noktada.
SELECT STUFF('abcdef', 2, 3, 'ijklmn');
GO
SELECT STUFF('abcdef', 2, 3, 'ijklmn');
GO
Sonuç kümesi buradadır.
---------
aijklmnef
(1 row(s) affected)
---------
aijklmnef
(1 row(s) affected)