Возьмите следующие 4 Пример XML документы:Использование XQuery в SQL Server 2008 для поиска содержимого
< Пример > < Цвет > оранжевый </Цвет > </Пример >
< Пример > < Автомобиль цвет = "оранжевый" > Форд Фокус </Автомобиль > </Пример >
< Пример > <County> Orange County </County > </Пример >
< Пример > < Оранжевый/Orange > </Пример >
Они все хранятся в базе данных SQL Server в таблице с типом данных XML-столбца (нетипизированного).
Как бы я идти о запуске запроса ищет все содержимое документа со словом оранжевого цвета в нем, что будет возвращать следующие документы:
- это имеет значение оранжевый внутри элемента.
- У этого значения есть значение апельсин внутри атрибута.
- это имеет значение Orange County внутри элемента (обратите внимание на другую оболочку слова Orange)
Документ-не должен быть возвращен в результатах запроса, как слово апельсин имя элемента и не данные стоимость.
Возможно ли это?
Заранее спасибо.
Привет, спасибо, что работает, однако он работает только если есть один узел в дочерний узел, как бы я искать узлов и значения атрибутов, если Пример корневой узел содержит несколько дочерних узлов: <Автомобиль цвет =» оранжевый "> Ford Focus оранжевый Orange County –
нормально, после добавления этого запроса примерно через 2 часа в поисках ответа я тогда вернулся к более погуглить для ответа на этот I нашел это: SELECT * FROM dbo.XQueryTest WHERE XmlContent.exist ('// */text() [содержит (., "Orange")]') = 1 –