XPath для поиска элементов в последовательности - PullRequest
0 голосов
/ 13 января 2009

с xml вроде:

<a>
  <b>
   <c>1</c>
   <c>2</c>
   </c>3</c>
  </b>

Я пытаюсь создать выражение xpath (для запроса postgresql), которое будет возвращать, если это конкретное значение, а не все три значения. Что у меня сейчас есть (что не работает):

select * from someTable where xpath ('//uim:a/text()', job, ARRAY[ ARRAY['uim','http://www.cmpy.com/uim'] ])::text[] IN (ARRAY['1','3']);

Если я попробую с ARRAY ['1'], это не вернет никаких значений, но с ARRAY ['1', '2', '3'] вернет все три.

Как выбрать на основе одного элемента в последовательности?

Спасибо.

1 Ответ

1 голос
/ 17 июля 2009

Если вы спрашиваете, как получить значение 1 или более элементов XML в вашем сегменте XML, то самым простым способом, скорее всего, будет просто использовать собственную библиотеку SQL CLR и анализ XPath из нее, чтобы собрать и вернуть любую информацию, которую вы желание. По крайней мере, таков мой подход.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...