El título de su pregunta dice MSQL, así que estoy tomando su pregunta como una pregunta del servidor Sql.
- Función de división
Según la versión de SQL Server/Configuración del servidor, necesitará una función de división que pueda dividir una cadena en un delimitador de su elección. Aquí hay una función de este tipo.
CREATE FUNCTION [dbo].[fnSplit](@data NVARCHAR(MAX), @delimiter NVARCHAR(5))
RETURNS @t TABLE (rowNum int IDENTITY(1,1), data NVARCHAR(max), descriptor varchar(255) NULL)
AS
BEGIN
DECLARE @textXML XML;
SELECT @textXML = CAST('<d>' + REPLACE(@data, @delimiter, '</d><d>') + '</d>' AS XML);
INSERT INTO @t(data)
SELECT RTRIM(LTRIM(T.split.value('.', 'nvarchar(max)'))) AS data
FROM @textXML.nodes('/d') T(split)
RETURN
END
- Consulte palabras comunes usando la función de división (hay bastantes maneras de hacer esto, aquí hay una).
SELECT sentence1.data FROM dbo.fnSplit('This site is very helpful',' ') sentence1 INNER JOIN dbo.fnSplit('I need a helpful site',' ') sentence2 ON sentence1.data = sentence2.data