SQL: запрос списка в списке XML - PullRequest
       1

SQL: запрос списка в списке XML

0 голосов
/ 08 сентября 2010

Я пытаюсь запросить XML в SQL Server, но у меня возникают трудности:

Вот пример XML:

<BaseReport>
  <Parties>
    <Party>
     <SubjectType>
      <ListItem Name="SubjectType1Name" />
      <ListItem Name="SubjectType2Name" />
     </SubjectType>
    </Party>
    <Party>
      <SubjectType>
       <ListItem Name="SubjectType1Name" />
       <ListItem Name="SubjectType2Name" />
     </SubjectType>
    </Party>
  </Parties>
</BaseReport>

Моя цель - извлечь имя типа субъекта измой xml.Я не уверен, как запросить список в списке, хотя.Я хочу взять первый тип субъекта первой партии.Я пробовал следующее безрезультатно:

 SELECT myXML.value('(/BaseReport/Parties/Party/SubjectType/@Name)[1]', 'varchar(50)') as Name_Type
 FROM MyTable

И он возвращает все пустые значения (иначе мой запрос неверен).Есть предложения?

1 Ответ

2 голосов
/ 08 сентября 2010

Вы писали:

Я хочу взять первый тип субъекта первой партии

Итак, правильный XPath должен быть:

/BaseReport/Parties/Party[1]/SubjectType/ListItem[1]/@Name
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...