STUFF (Azure Stream Analytics)

Wstawia ciąg do innego ciągu. Usuwa określoną długość znaków w pierwszym ciągu w pozycji początkowej, a następnie wstawia drugi ciąg do pierwszego ciągu w pozycji początkowej.

Składnia

STUFF ( expression, start, length, inserted_expression )

Uwaga

Indeks/pozycja funkcji STUFF jest oparta na 1.

Argumenty

expression

Jest wyrażeniem znaku lub kolumną typu nvarchar(max).

Uruchomić

Jest wyrażeniem bigint określającym, gdzie rozpoczyna się usuwanie i wstawianie. Jeśli wartość początkowa jest mniejsza niż 1, zwracane wyrażenie rozpocznie się od pierwszego znaku określonego w wyrażeniu. Jeśli wartość startowa jest większa niż liczba znaków w wyrażeniu wartości, zwracane jest wyrażenie o zerowej długości.

length

Jest dodatnim wyrażeniem bigint określającym, ile znaków wyrażenia zostanie usuniętych. Jeśli długość jest ujemna, zostanie wygenerowany błąd i instrukcja zostanie zakończona. Jeśli początkowa + długość jest większa niż liczba znaków w wyrażeniu, wszystkie znaki zostaną usunięte. Jeśli długość jest równa zero, wstawienie występuje w lokalizacji początkowej i nie są usuwane żadne znaki.

Typy zwracane

Nvarchar(max)

Przykłady

SELECT
    STUFF('abcdef', 2, 3, 'ijklmn') AS Stuffed
FROM Input
Nadziewane
aijklmnef

Co odpowiada:

  • Usunięto 3 znaki z pozycji 2: bcd
  • Następnie wstawiono ijklmn w pozycji 2 : a+ijklmn+ef