Я пытаюсь разбить данные через запятую на отдельные столбцы (используя SQL Server 2008).Я встречал подобные вопросы здесь, но в моем случае данные, содержащиеся в каждой строке, ОБА разделены запятыми и символами возврата каретки.
ПРИМЕР:
Date Content
---- -------
1/1/2019 1, John, Doe
2, Jane, Doe
1/2/2019 1, John, Doe
2, Jane Doe
3, Mary, Smith
Использованиепользовательская функция разделения, я смог вернуть значение только для одной записи:
SELECT * FROM Split_CTE ((ВЫБРАТЬ ТОП 1 содержимого из myTable), CHAR (10))
RESULT:
1,John,Doe
2,Jane,Doe
И используя функцию подстроки, я смог вернуть только первую строку из каждой записи:
SELECT dateRetrieved, SUBSTRING (content, 1, CHARINDEX (CHAR (10),content) -1) as Row FROM myTable
РЕЗУЛЬТАТ:
1/1/2019 1,John,Doe
1/2/2019 1,John,Doe
Но что я пытаюсь получить, это:
Date Row First Last
1/1/2019 1 John Doe
1/1/2019 2 Jane Doe
1/2/2019 1 John Doe
1/2/2019 2 Jane Doe
1/2/2019 3 Mary Smith
Есть предложения?