Некоторые альтернативы функции STRING_SPLIT для устаревших версий SQL Server:
- Пользовательские функции. 1 Создание пользовательских функций может быть решением для обработки строк, особенно когда нужно учитывать специфические требования, например обработку разделителей, состоящих из нескольких символов. 1
- PARSENAME. 1 Этот метод имеет ограничение на количество частей — только четыре. 1 Он не подходит для данных, содержащих точки. 1
- CHARINDEX и SUBSTRING. 1 Сочетание этих функций с LTRIM и RTRIM позволяет оптимизировать процесс разбиения строк. 1
- RANK. 1 Если важно соблюдение последовательности, RANK(), применённая вместе с множественным подходом, предложит эффективное решение. 1
- Конвертация списка в документ XML. 5 Этот вариант работает на всех версиях от SQL 2005 и выше. 5
Также существует функция SPLIT_STRING, которая работает на SQL Server 2012 и выше и позволяет разделителю строки быть длиннее одного символа. 2