Delen via


SPULLEN (Transact-SQL)

Van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL Analytics-eindpunt in Microsoft FabricMagazijn in Microsoft FabricSQL-database in Microsoft Fabric

De STUFF-functie voegt een string in een andere string in. Het verwijdert een bepaalde lengte tekens in de eerste string op de startpositie en voegt vervolgens de tweede string in de eerste string op de startpositie.

Transact-SQL syntaxis-conventies

Syntaxis

STUFF ( character_expression , start , length , replace_with_expression )

Arguments

character_expression

Een uitdrukking van karaktergegevens. character_expression kan een constante, variabele of kolom zijn van zowel karakter- als binaire gegevens.

start

Een geheel getal dat de locatie aangeeft waar verwijdering en invoeging moeten beginnen. Als start negatief of nul is, wordt een nullstring teruggegeven. Als start langer is dan de eerste character_expression, wordt een nullstring teruggegeven. Start kan van type bigint zijn.

length

Een geheel getal dat het aantal tekens aangeeft dat verwijderd moet worden. Als de lengte negatief is, wordt een nullstring teruggegeven. Als de lengte langer is dan de eerste character_expression, vindt verwijdering plaats tot het laatste teken in de laatste character_expression. Als de lengte nul is, vindt de invoeging plaats op de startlocatie en worden er geen tekens verwijderd. De lengte kan van het type bigint zijn.

replace_with_expression

Een uitdrukking van karaktergegevens. replace_with_expression kan een constante, variabele of kolom zijn van zowel een teken als binaire gegevens. Deze uitdrukking vervangt lengtekarakters van character_expression beginnend bij begin. Als replace_with_expression worden geleverdNULL, verwijdert het karakters zonder iets toe te voegen.

Retourtypen

Geeft karaktergegevens terug als character_expression een van de ondersteunde karakterdatatypes is. Geeft binaire data terug als character_expression een van de ondersteunde binaire datatypes is.

Opmerkingen

Als de startpositie of de lengte negatief is, of als de beginpositie groter is dan de lengte van de eerste string, wordt een null-string teruggegeven. Als de startpositie 0 is, wordt een nulwaarde teruggegeven. Als de te verwijderen lengte langer is dan de eerste string, wordt deze verwijderd naar het eerste teken in de eerste string.

Er wordt een fout geactiveerd als de resulterende waarde groter is dan het maximum dat door het retourtype wordt ondersteund.

Aanvullende tekens (surrogaatparen)

Bij het gebruik van aanvullende karakter (SC) verzamelingen kunnen zowel character_expression als replace_with_expression surrogaatparen bevatten. De lengteparameter telt elke surrogaat in character_expression als één enkel karakter.

Voorbeelden

Het volgende voorbeeld geeft een tekenreeks terug die is gemaakt door drie tekens uit de eerste string te verwijderen, abcdef, beginnend op positie 2, op b, en de tweede string in te voegen op het verwijderingspunt.

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

Hier is het resultatenoverzicht.

---------
aijklmnef
  
(1 row(s) affected)

Zie ook