Это вопрос для новичков. Я только недавно начал изучать XQuery и XPath.
Рассмотрим этот XML
<employees>
<employee empid="1">
<ename>KING</ename>
<mgr></mgr>
<hiredate>17-11-1981</hiredate>
</employee>
<employee empid="2">
<ename>BLAKE</ename>
<mgr>7839</mgr>
<hiredate>1-5-1981</hiredate>
<test>
<sub1>one</sub1>
<sub2>two</sub2>
</test>
</employee>
</employees>
Когда я выполняю следующий XQuery,
let $db := db:open("example", "documents/employee.xml")
for $item in $db/(/employees/employee,/employees/employee/test)
let $empid := $item/@empid
let $ename := $item/ename
let $sub1 := $item/sub1
let $hiredate := $item/hiredate
let $sub2 := $item/sub2
return ($empid,$ename,$sub1,$hiredate,$sub2)
Я получил...
empid="1"
<ename>KING</ename>
<hiredate>17-11-1981</hiredate>
<sub1>empid1-one</sub1>
empid="2"
<ename>BLAKE</ename>
<hiredate>1-5-1981</hiredate>
<sub1>empid2-one</sub1>
<sub2>empid2-two</sub2>
Результат, который я надеюсь получить ...
empid="1"
<ename>KING</ename>
<sub1>empid1-one</sub1>
<hiredate>17-11-1981</hiredate>
empid="2"
<ename>BLAKE</ename>
<sub1>empid2-one</sub1>
<hiredate>1-5-1981</hiredate>
<sub2>empid2-two</sub2>
Я хочу, чтобы порядок результатов был основан на порядке моего предложения возврата.
Может кто-нибудь указать мне правильное направление? Спасибо