首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何编写查询flwor xquery?

如何编写查询flwor xquery?
EN

Stack Overflow用户
提问于 2017-11-09 11:45:13
回答 1查看 44关注 0票数 2

我有5辆车,每辆车有5辆车主,我需要归还那些国家没有出现在其他车主身上的车主(可以出现在同一辆车的车主中):

代码语言:javascript
复制
<root>
  <car>
   <id>1</id>
   <owner>
            <name>George Smith</name>
            <nation>USA</nation>
   </owner>
   <owner>
            <name>Carolina Herre</name>
            <nation>USA</nation>
   </owner>
   <owner>
            <name>Martha Belar</name>
            <nation>Denmark</nation>
   </owner>
   <owner>
            <name>Fernando Izza</name>
            <nation>Italy</nation>
   </owner>
   <owner>
            <name>George Smith</name>
            <nation>Italy</nation>
   </owner>
 </car>
 <car>
   <id>2</id>
   <owner>
            <name>George Gelar</name>
            <nation>USA</nation>
   </owner>
   <owner>
            <name>Gema Bio</name>
             <nation>Spain</nation>
    </owner>
    <owner>
             <name>Peter Vdf</name>
            <nation>Denmark</nation>
    </owner>
    <owner>
            <name>Felipe Rodriguez</name>
            <nation>Denmark</nation>
    </owner>
    <owner>
            <name>George Smith</name>
            <nation>USA</nation>
    </owner>
</car>
<car>
...
</car>
<car>
...
</car>
<car>
...
</car>
</root>

也就是说,考虑到xml,输出将是:

代码语言:javascript
复制
<owner>
    <name>Fernando Izza</name>
    <nation>Italy</nation>
    <carID>1</carID>
</owner>
<owner>
    <name>George Smith</name>
    <nation>Italy</nation>
    <carID>1</carID>
</owner>
<owner>
    <name>Gema Bio</name>
    <nation>Spain</nation>
    <carID>2</carID>
</owner>

我试着得到那些没有出现在几辆汽车上的国家的名单,然后得到那些来自这些国家的车主,但我不知道如何得到。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-09 14:05:11

你可以根据他们的国家对车主进行分组,然后向上看,看看这个国家是否出现在不止一辆车下面:

代码语言:javascript
复制
for $owner in doc("cars.xml")//car/owner
group by $nation := $owner/nation
where count($owner/..) eq 1
for $o in $owner
return <owner>{
  $o/*,
  <carID>{$o/../id/text()}</carID>
}</owner>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47201024

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档