HOW TO SPLIT A STRING IN TSQL

MSSQL has built in function to split a string into an array of string. The command is SELECT value FROM STRING_SPLIT(‘your-string’,’separator’).

DECLARE @SENTENCE VARCHAR(MAX) = 'You are my best friend!'
DECLARE @SEPARATOR VARCHAR(1) = ' '
SELECT value FROM STRING_SPLIT(@SENTENCE,@SEPARATOR) 

Or we can store the query result into a variable table.

DECLARE @TABLE TABLE(
  WORD VARCHAR(50)
)

DECLARE @SENTENCE VARCHAR(MAX) = 'You are my best friend!'
DECLARE @SEPARATOR VARCHAR(1) = ' '
INSERT INTO @TABLE SELECT value FROM STRING_SPLIT(@SENTENCE,@SEPARATOR) 
SELECT * FROM @TABLE