Как мы можем преобразовать следующий ввод в строку в SQL Server?
'e4lu50', 'e4lu10', 'e4lu11', 'e4de11', 'e4de12', 'e4nl51', 'e4es11'
Ожидаемый результат
e4lu50
e4lu10
e4lu11
e4de11
e4de12
e4nl51
e4es11
У меня есть функция
CREATE FUNCTION [dbo].[BreakStringIntoRows]
(@CommadelimitedString VARCHAR(1000))
RETURNS
@Result TABLE (Column1 INT)
AS
BEGIN
DECLARE @IntLocation INT
WHILE (CHARINDEX(',', @CommadelimitedString, 0) > 0)
BEGIN
SET @IntLocation = CHARINDEX(',', @CommadelimitedString, 0)
INSERT INTO @Result (Column1)
--LTRIM and RTRIM to ensure blank spaces are removed
SELECT
RTRIM(LTRIM(SUBSTRING(@CommadelimitedString, 0, @IntLocation)))
SET @CommadelimitedString = STUFF(@CommadelimitedString, 1, @IntLocation, '')
END
INSERT INTO @Result (Column1)
SELECT RTRIM(LTRIM(@CommadelimitedString))--LTRIM and RTRIM to ensure blank spaces are removed
RETURN
END
и запрос, но проблема заключается в том, что не нужно вводить данные с кавычками
WITH SEG(aa) AS
(
SELECT
BreakStringIntoRows ('e4lu50', 'e4lu10', 'e4lu11', 'e4de11',
'e4de12', 'e4nl51', 'e4es11', 'e4it11')
)
SELECT *
FROM SEG