Когда я пытаюсь выполнить код Xquery в файле xml, я получаю несколько результатов в одном из моих полей.Xquery Несколько результатов в узле
Вот мой XML-файл
<Actors>
<Actor name="NTR">
<Movie TITLE="Yamadonga" Director="Rajamouli"></Movie>
<Movie TITLE="AADI" Director="VV vinayak">
</Movie>
</Actor>
<Actor name="Rajeev">
<Movie TITLE="Yamadonga" Director="Rajamouli" ></Movie>
</Actor>
<Actor name="mahesh">
<Movie TITLE="pokiri" Director="puri">
</Movie>
</Actor>
мой XQuery файл
<Director>
{
for $Movie in doc("actors.xml")/Actors/Actor/Movie
return
if($Movie/@TITLE=$title)
then
data($Movie/@Director)
else()
}
</Director>
Самое главное, что мой результат
<movies>
<movie>
<Title>Yamadonga</Title>
<Actor>NTR</Actor>
<Actor>Rajeev</Actor>
<Director>Rajamouli Rajamouli</Director>
</movie>
</movies>
Как получить только одно значение в поле директора?
Моя процедура: - Я управлял функцией определенных значений (../Movie/@TITLE), и это дало мне ответ на показ заголовка. Но поскольку название и режиссер - атрибуты фильма, я не могу получить доступ к одному, используя другой. Когда я перебираю актера, так как есть два актера, у которых один режиссер для одного фильма, имя режиссера дважды печатается. Когда я перебираю фильм, я не могу использовать над ним отличные значения, поскольку это не атрибут.
OMG, это сработало так хорошо. Просто простая строка, я обсуждаю ее в течение последних 1 дня, поскольку я не знаю XPath. Возьмите лука! – user2133404
Если ваша проблема решена, вы должны принять ответ (тот, который вам больше всего помог) – dirkk