У меня есть два XML-документа Students.xml и Admission.xml, мне нужен xquery для возврата идентификатора студента и имени студента, которые закончили 30 дней с даты поступления. Я запутался в том, как присоединиться к ним и использовать какое-либо условие, пожалуйста, помогите.
Студент.xml
<?xml version="1.0" encoding="UTF-8" ?>
<root>
<StudentDetails>
<Student_ID>1</Student_ID>
<Student_Name>Mark</Student_Name>
</StudentDetails>
<StudentDetails>
<Student_ID>2</Student_ID>
<Student_Name>Robin</Student_Name>
</StudentDetails>
<StudentDetails>
<Student_ID>3</Student_ID>
<Student_Name>Charlie</Student_Name>
</StudentDetails>
</root>
Admission.xml
<?xml version="1.0" encoding="UTF-8" ?>
<root>
<AdmissionDetails>
<Admission_ID>1</Admission_ID>
<Admission_Date>2017-10-06</Admission_Date>
<Admission_Status>Admitted</Admission_Status>
<Student_ID>3</Student_ID>
</AdmissionDetails>
<AdmissionDetails>
<Admission_ID>2</Admission_ID>
<Admission_Date>2017-04-14</Admission_Date>
<Admission_Status>Admitted</Admission_Status>
<Student_ID>2</Student_ID>
</AdmissionDetails>
<AdmissionDetails>
<Admission_ID>3</Admission_ID>
<Admission_Date>2017-08-16</Admission_Date>
<Admission_Status>Admitted</Admission_Status>
<Student_ID>1</Student_ID>
</AdmissionDetails>
Мой код до сих пор такой, но он дает мне результат, который представляет собой повторение значений, которые отчаянно нуждаются в помощи.
for $sid in doc("Student.xml")/root/StudentDetails/Student_ID
for $aid in doc("Admission.xml")/root/AdmissionDetails/Student_ID
for $x in doc("Admission,xml")/root/AdmissionDetails/Admission_Date
where $sid = $aid and $x >current-date() + xs:dayTimeDuration("P30D")
return $sid
И это результат
<?xml version="1.0" encoding="UTF-8"?>
<Student_ID>1</Student_ID>
<Student_ID>1</Student_ID>
<Student_ID>10</Student_ID>
<Student_ID>10</Student_ID>