In questo articolo, discuteremo vari modi per dividere il valore della stringa delimitata. Si può ottenere utilizzando diversi metodi, tra cui.
- Usare la funzione STRING_SPLIT per dividere la stringa
- Creare una funzione di valore di tabella definita dallutente per dividere la stringa,
- Utilizzare XQuery per dividere il valore della stringa e trasformare una stringa delimitata in XML,
Per prima cosa, dobbiamo creare una tabella e inserirvi i dati che verranno utilizzati nei tre metodi. La tabella deve contenere una sola riga con il campo id e una stringa con caratteri delimitatori. Creare una tabella chiamata “studente” usando il seguente codice.
CREATE TABLE student ( ID INT IDENTITY (1, 1), nome dello studente VARCHAR(MAX) )<ALTER DATABASE SET COMPATIBILITY_LEVEL = 130CREATE FUNCTION [dbo].[split_string]( @string_value NVARCHAR(MAX), @character_delimiter CHAR(1))RETURN @set_result TABLE(split_data NVARCHAR(MAX))INIZIO DECLARE @start_position INT, @end_position INT SELECT @start_position = 1, @end_position = CHARINDEX(@character_delimiter, @start_position < LEN(@string_value) + 1 START IF @end_position = 0 SET @end_position = LEN(@string_value) + 1 INSERT INTO @result_set (splited_data) VALUES(SUBSTRAT(@string_value, @start_position, @end_position - @start_position)) SET @start_position = @financing_position + 1 SET @end_position = CHARINDEX(@character_delimiter, @string_value, @start_position) END RETURNSFINE<<Come si divide una stringa con un carattere delimitato in SQL Server?