Я пытаюсь извлечь некоторые данные из сторонней системы, которая использует базу данных SQL Server. Структура БД выглядит примерно так:
Заказать
OrderID OrderNumber
1 OX101
2 OX102
OrderItem
OrderItemID OrderID OptionCodes
1 1 12,14,15
2 1 14
3 2 15
Опция
OptionID Description
12 Batteries
14 Gift wrap
15 Case
[etc.]
Что мне нужно, так это одна строка для позиции заказа , которая включает в себя объединенное поле с описанием каждой опции. Вот как то так:
OrderItemID OrderNumber Options
1 OX101 Batteries\nGift Wrap\nCase
2 OX101 Gift Wrap
3 OX102 Case
Конечно, это осложняется тем фактом, что параметры представляют собой строковое поле, разделенное запятыми, а не правильную таблицу поиска. Поэтому мне нужно разделить это запятыми, чтобы объединить таблицу параметров, а затем объединить результат обратно в одно поле.
Сначала я попытался создать функцию, которая разделяет данные опций через запятую и возвращает их в виде таблицы. Хотя я смог соединить результат этой функции с таблицей параметров, я не смог передать столбец OptionCodes в функцию в соединении, поскольку казалось, что он работает только с объявленными переменными или жестко заданными значениями.
Может ли кто-нибудь указать мне правильное направление?