Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Wstaw znaki w środku ciągu w SQL Server (T-SQL)

SQL Server udostępnia funkcję STUFF() funkcja, która umożliwia wstawienie ciągu wewnątrz innego ciągu.

Funkcja pozwala również określić liczbę znaków (jeśli istnieją) do usunięcia z oryginalnego ciągu w celu dopasowania do nowego ciągu.

Przykład

SELECT STUFF('WaterMelon', 6, 0, 'Juicy');

Wynik:

WaterJuicyMelon

Tutaj wstawiłem ciąg Juicy do ciągu Arbuz .

W tym przypadku podałem trzeciemu argumentowi wartość 0 , co oznacza, że ​​żadne znaki nie zostały usunięte z oryginalnego ciągu.

Usuń znaki z oryginalnego ciągu

W tym przykładzie usuwam niektóre znaki z oryginalnego ciągu.

SELECT STUFF('WaterMelon', 6, 3, 'Juicy');

Wynik:

WaterJuicyon

Negatywne/Zerowe pozycje startowe

Jeśli podasz wartość ujemną lub zero dla pozycji początkowej, zwracana jest wartość null.

SELECT STUFF('WaterMelon', -1, 3, 'Juicy');

Wynik:

NULL

Gdy pozycja startowa jest zbyt wysoka

Otrzymasz również wartość null, jeśli podasz pozycję początkową, która jest dłuższa niż oryginalny ciąg.

SELECT STUFF('WaterMelon', 100, 3, 'Juicy');

Wynik:

NULL

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Przedstawiamy nową funkcję — raporty Spotlight Cloud

  2. Jak uruchomić to samo zapytanie we wszystkich bazach danych w instancji?

  3. POKAŻ WSZYSTKIE Daty między dwiema datami; jeśli nie istnieje wiersz dla określonej daty, pokaż zero we wszystkich kolumnach

  4. SqlConnection.Close() wewnątrz przy użyciu instrukcji

  5. Dynamiczne zapytanie PIVOT programu SQL Server?