Я пытаюсь работать с некоторыми XML-данными, которые есть в нашей базе данных.
Отправной точкой является таблица с таким грубым контуром:
CREATE TABLE MyTable
(
ID INT NOT NULL IDENTITY(1,1),
...,
FKSiteID INT NOT NULL REFERENCES ...,
...,
Keywords XML(DOCUMENT info.Keywords) NULL
)
типичный фрагмент XML может быть:
<keywords xmlns="http://www.educations.com/Info/Keywords">
<keyword>keyword 1</keyword>
<keyword>keyword 2</keyword>
<keyword>keyword 3</keyword>
<keyword>keyword 4</keyword>
<keyword>keyword 5</keyword>
</keywords>
В конце я хочу получить представление, показывающее все ключевые слова, сгруппированные в одном документе XML, следуя той же схеме, по значению FKSiteID.
В качестве среднего шага я пытался извлечь все ключевые слова, но мне не удалось сделать это без использования табличной функции и CROSS APPLY к ней таблицы.
Любой другой намек?