我是xquery的新手,想要在activityStatus上添加条件为' A'和婚姻状况一样"已婚"获得人的性别。我已经创建了单独添加条件的查询,但是在添加多个条件时遇到了麻烦。任何指针都会有所帮助。 提前谢谢。
根据婚姻状况查询性别:
SELECT PersonInfo.gender_1
from personData personData,
xmltable('$personData/Person/personDataCollection/
personData[(maritalStatus=("Married"))]'
passing personData."XMLDATA" as "personData"
columns gender_1 varchar(12) path 'gender'
) PersonInfo
......和文件......
<?xml version="1.0" encoding="UTF-8"?>
<Person>
<activityStatus>A</activityStatus>
<personDataCollection>
<personData>
<personName>
<lastName>ABC</lastName>
<firstName>XYZ</firstName>
</personName>
<addressCollection>
<address>
<line1>123</line1>
<city>QWERTY</city>
<state>ASDF</state>
<postalCode>147852</postalCode>
</address>
</addressCollection>
<maritalStatus>Married</maritalStatus>
<gender>M</gender>
</personData>
</personDataCollection>
</Person>
答案 0 :(得分:3)
听起来你只想在XPath中添加第二个谓词。如果是这样,那么你差不多完成了:
$personData/Person[activityStatus="A"]/personDataCollection/personData[maritalStatus="Married"]