如何根据数组(和找到的节点)中的第一个匹配项查询第一个节点?

保罗·迪·彼得罗(Paolo Di Pietro)

好吧,我回到这里重新提出一个旧的未解决的问题。我会尽力解释。

我得到以下密码查询:

neo4j-sh$ start n=node(1344) match (n)-[t:_HAS_TRANSLATION]-(p) return t,p;
+-----------------------------------------------------------------------------------+
| t                                   | p                                           |
+-----------------------------------------------------------------------------------+
| :_HAS_TRANSLATION[2224]{of:"value"} | Node[1349]{language:"hi-hi",text:"(>0@"}    |
| :_HAS_TRANSLATION[2223]{of:"value"} | Node[1348]{language:"es-es",text:"hembra"}  |
| :_HAS_TRANSLATION[2222]{of:"value"} | Node[1347]{language:"ru-ru",text:"65=A:89"} |
| :_HAS_TRANSLATION[2221]{of:"value"} | Node[1346]{language:"en-us",text:"female"}  |
| :_HAS_TRANSLATION[2220]{of:"value"} | Node[1345]{language:"it-it",text:"femmina"} |
+-----------------------------------------------------------------------------------+

然后我有一个动态的语言数组(可以在任何查询中更改),可以按任何顺序排列,例如

["fr-fr","jp-jp","en-us", "it-it", "de-de", "ru-ru", "hi-hi"]

我需要一个查询来仅提取第一个[p],具体取决于数组的内容(在本例中为Node [1346] {language:“ en-us”,text:“ female”}},因为“ en-us”是在p列上第一个有macth的数组的第一个匹配项。

再次感谢您的耐心配合。

保罗

斯蒂芬·阿姆布鲁斯特(Stefan Armbruster)

也许有一种更聪明的方法可以解决此问题,但至少此语句应该可以解决您的问题:

START n=node(1344) match (n)-[t:_HAS_TRANSLATION]-(p)
WITH n, collect(p.language) as languages
WITH n, filter(x in ["fr-fr","jp-jp","en-us","it-it","de-de","ru-ru","hi-hi"] where x in languages)[0] as lang
MATCH (n)-[t:_HAS_TRANSLATION]-(p)
WHERE p.language = lang
RETURN t,p

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从双向链表中删除第一个和最后一个节点?

来自分类Dev

如何找到数组之间的第一个匹配项并对其进行格式化

来自分类Dev

找到第一个单词和最后一个单词的匹配项

来自分类Dev

xpath获取第一个节点查询

来自分类Dev

仅子查询第一个匹配项

来自分类Dev

根据字符串中的第一个字符,找到字符串列表中元素的第一个匹配项

来自分类Dev

根据字符串中的第一个字符,找到字符串列表中元素的第一个匹配项

来自分类Dev

每当找到类中的第一个匹配项时,如何停止方法.contains()?

来自分类Dev

Xpath 必需:根据第一个节点的子节点获取兄弟节点的子节点

来自分类Dev

如何找到数组中的第一个重复项?

来自分类Dev

在角树中创建第一个节点

来自分类Dev

在角树中创建第一个节点

来自分类Dev

XSLT 根据子节点的值在第一个节点之前插入节点

来自分类Dev

如何获取NodeList中每个节点的第一个子节点的值?

来自分类Dev

按数据框进行分组和排序,然后根据条件找到第一个匹配项

来自分类Dev

如何提取数组的第一个找到的元素?

来自分类Dev

如何使用xmlreader获取第一个找到的节点的内容?

来自分类Dev

对于数组中的每个重复项,找到第一个重复项的索引

来自分类Dev

如何编写密码语句以找出我想要的第一个匹配节点

来自分类Dev

如何使此正则表达式仅找到第一个匹配项

来自分类Dev

在Firebase查询中访问第一个Firebase节点数据

来自分类Dev

XPath谓词仅使用节点集中的第一个节点进行匹配

来自分类Dev

在sqlite查询中的第一个匹配项处停止

来自分类Dev

如何只匹配Vimregex中的第一个

来自分类Dev

扩展grep以在第一个匹配项之后找到匹配项

来自分类Dev

使用“ sed”仅替换第一个和最后一个匹配项

来自分类Dev

如何让`grep -o` 只输出一行中的第一个匹配项?

来自分类Dev

提取nan之后numpy数组中的第一个匹配项

来自分类Dev

javascript只删除循环中数组中的第一个匹配项

Related 相关文章

  1. 1

    如何从双向链表中删除第一个和最后一个节点?

  2. 2

    如何找到数组之间的第一个匹配项并对其进行格式化

  3. 3

    找到第一个单词和最后一个单词的匹配项

  4. 4

    xpath获取第一个节点查询

  5. 5

    仅子查询第一个匹配项

  6. 6

    根据字符串中的第一个字符,找到字符串列表中元素的第一个匹配项

  7. 7

    根据字符串中的第一个字符,找到字符串列表中元素的第一个匹配项

  8. 8

    每当找到类中的第一个匹配项时,如何停止方法.contains()?

  9. 9

    Xpath 必需:根据第一个节点的子节点获取兄弟节点的子节点

  10. 10

    如何找到数组中的第一个重复项?

  11. 11

    在角树中创建第一个节点

  12. 12

    在角树中创建第一个节点

  13. 13

    XSLT 根据子节点的值在第一个节点之前插入节点

  14. 14

    如何获取NodeList中每个节点的第一个子节点的值?

  15. 15

    按数据框进行分组和排序,然后根据条件找到第一个匹配项

  16. 16

    如何提取数组的第一个找到的元素?

  17. 17

    如何使用xmlreader获取第一个找到的节点的内容?

  18. 18

    对于数组中的每个重复项,找到第一个重复项的索引

  19. 19

    如何编写密码语句以找出我想要的第一个匹配节点

  20. 20

    如何使此正则表达式仅找到第一个匹配项

  21. 21

    在Firebase查询中访问第一个Firebase节点数据

  22. 22

    XPath谓词仅使用节点集中的第一个节点进行匹配

  23. 23

    在sqlite查询中的第一个匹配项处停止

  24. 24

    如何只匹配Vimregex中的第一个

  25. 25

    扩展grep以在第一个匹配项之后找到匹配项

  26. 26

    使用“ sed”仅替换第一个和最后一个匹配项

  27. 27

    如何让`grep -o` 只输出一行中的第一个匹配项?

  28. 28

    提取nan之后numpy数组中的第一个匹配项

  29. 29

    javascript只删除循环中数组中的第一个匹配项

热门标签

归档