Преобразование строки, разделенной запятыми, в отдельные строки

У меня есть такая таблица SQL:

| SomeID         | OtherID     | Data
+----------------+-------------+-------------------
| abcdef-.....   | cdef123-... | 18,20,22
| abcdef-.....   | 4554a24-... | 17,19
| 987654-.....   | 12324a2-... | 13,19,20

есть ли запрос, по которому я могу выполнить такой запрос, как SELECT OtherID, SplitData WHERE SomeID = 'abcdef -....... ', который возвращает отдельные строки, например:

| OtherID     | SplitData
+-------------+-------------------
| cdef123-... | 18
| cdef123-... | 20
| cdef123-... | 22
| 4554a24-... | 17
| 4554a24-... | 19

В основном разделять мои данные через запятую на отдельные строки?

Я знаю, что сохранение строки , разделенной запятыми, в реляционной базе данных звучит глупо, но обычный вариант использования в потребительском приложении делает это действительно полезным.

Я не хочу делать разделение в приложении, так как мне нужно разбиение на страницы, поэтому я хотел изучить варианты, прежде чем рефакторинг всего приложения.

] Это SQL Server 2008 (не R2).

214
задан DineshDB 20 March 2018 в 19:41
поделиться