【问题标题】:find pattern relationships using rest cypher使用 rest cypher 查找模式关系
【发布时间】:2014-07-05 15:24:08
【问题描述】:

如何使用 rest cypher 找到模式关系?

我在终端上运行的查询:-

MATCH (n)<-[:DEPENDS_ON*]-(dependent) RETURN n.host as Host,

count(DISTINCTdependent) AS Dependents ORDER BY Dependents DESC 限制 1**

输出是:-

+--------------------+ |主持人 |家属 |

+--------------------+ | “圣” | 20 | +--------------------+

where 作为与 rest 的等效查询:-

String query = "{\"query\" : \"MATCH (website)<-[rel]-(dependent) " +
                "WHERE TYPE(rel) = {rtype} RETURN website.host as Host," +
                "count(DISTINCT dependent) AS Dependents ORDER BY Dependents DESC LIMIT 1" +
                " \", \"params\" : {\"rtype\" : \"DEPENDS_ON*\"}}";     

输出为空(无记录)!!!

任何帮助表示赞赏。

P.S- 当我们在查询中不使用“*”时,一切正常。 IE 两个查询给出相同的结果

【问题讨论】:

    标签: rest neo4j cypher neo4jrestclient


    【解决方案1】:

    在第二个查询中,您将关系类型传递为“DEPENDS_ON*”,这是不正确的,因为包含了星号。

    星号用于允许指定关系的任意长度路径,但不是类型的一部分。

    【讨论】:

    • 令人失望。 * 有一些好的含义。它在两个查询中都存在,并且与 cypher 配合得很好,但在休息时却没有给我同样的结果
    • 您可以通过将星号留在查询本身中,展开,然后过滤来获得相同的结果: String query = "{\"query\" : \"MATCH (website)
    • 您也不能将关系指定为参数。只需编写带有关系(和星号)的查询作为查询的一部分。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多