MATERIAŁY (języka Transact-SQL)

Funkcja STUFF wstawia ciąg do drugiego ciągu.usuwa ona określoną liczbę znaków w pierwszym ciągu począwszy od pozycji początkowej, a następnie wstawia je w drugim ciągu począwszy od pozycji początkowej.

Topic link iconKonwencje składni języka Transact-SQL

STUFF ( character_expression , start , length ,character_expression )

Argumenty

  • character_expression
    Is an expression of character data.character_expression can be a constant, variable, or column of either character or binary data.

  • start
    Liczba całkowita określająca położenie rozpoczęcia usuwania i wstawiania.Jeśli wartość start lub length jest ujemna, zwracany jest ciąg null.Jeśli wartość start jest dłuższa niż pierwszy ciąg character_expression, zwracany jest ciąg null.Wartość start może być typu bigint.

  • length
    Liczba całkowita określająca liczbę znaków do usunięcia.Jeśli wartość length jest dłuższa niż pierwszy ciąg character_expression, usuwane są znaki aż do ostatniego w ciągu character_expression.Wartość length może być typu bigint.

Zwracane typy

Parametr opcjonalny type character_expression Określa liczbę cyfr ułamkowe części sekundy. Zwraca dane binarne, jeśli character_expression jest jednym z typów obsługiwanych dane binarne.

Remarks

Jeśli pozycja początkowa lub długość jest ujemna bądź też pozycja początkowa jest większa niż długość pierwszego ciągu, to zwracany jest ciąg null.Jeśli liczba znaków do usunięcia jest większa niż długość pierwszego ciągu, to usunięcie następuje do pierwszego znaku w pierwszym ciągu.

Jeśli wartość wynikowa jest większa niż maksymalna wartość obsługiwana dla zwracanego typu, to zgłaszany jest błąd.

Przykłady

W poniższym przykładzie zwraca ciąg znaków, utworzony przez usunięcie trzy znaki z pierwszego ciągu abcdef, począwszy od pozycji 2, w b, a wstawianiem drugi ciąg w momencie usunięcia.

SELECT STUFF('abcdef', 2, 3, 'ijklmn');
GO

Here is the result set.

--------- 
aijklmnef 

(1 row(s) affected)