Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在Neo4jClient中使用展开的密码查询_C#_F#_Neo4j_Neo4jclient - Fatal编程技术网

C# 在Neo4jClient中使用展开的密码查询

C# 在Neo4jClient中使用展开的密码查询,c#,f#,neo4j,neo4jclient,C#,F#,Neo4j,Neo4jclient,由于当前版本的Neo4jClient不支持展开,因此我在重写以下Cypher查询时遇到问题: MATCH (:A{UId:someByteArray})--(b1:B)-[:C]-(b2:B) MATCH p = (b1)-[:C*]->(b2) WITH b1.someString as s1, b2.someString as s2, p, EXTRACT(c IN RELATIONSHIPS(p) | c.someValue) AS valuesAl

由于当前版本的Neo4jClient不支持展开,因此我在重写以下Cypher查询时遇到问题:

MATCH (:A{UId:someByteArray})--(b1:B)-[:C]-(b2:B)
    MATCH p = (b1)-[:C*]->(b2)
    WITH b1.someString as s1, b2.someString as s2, p, 
        EXTRACT(c IN RELATIONSHIPS(p) | c.someValue) AS valuesAlias
    UNWIND(valuesAlias) AS va
    WITH s1, s2, length(NODES(p)) as pLength, MIN(va) AS minVA
WITH s1, s2, MAX(minVA) as maxMinVA, MIN(pLength) AS minPL
RETURN s1, s2, maxMinVA

上面的查询是

的一个变体,基本上需要用REDUCE/CASE语句替换UNWIND/MIN,如下查询所示:

MATCH (:A{UId:someByteArray})--(b1:B)-[:C]-(b2:B)
    MATCH p = (b1)-[:C*]->(b2)
    WITH b1.someString as s1, b2.someString as s2, p, 
        EXTRACT(c IN RELATIONSHIPS(p) | c.someValue) AS valuesAlias
    WITH s1, s2, p, length(NODES(p)) as pLength, 
        REDUCE(curVA=9999999999, va in valuesAlias |
            CASE
                WHEN va < curVA THEN va
                ELSE curVA
            END
        ) AS minVA
WITH s1, s2, MAX(minVA) as maxMinVA, MIN(pLength) AS minPL
RETURN s1, s2, maxMinVA
匹配(:A{UId:someByteArray})-(b1:B)-[:C]-(b2:B)
匹配p=(b1)-[:C*]->(b2)
b1.someString为s1,b2.someString为s2,p,
提取(关系中的c(p)| c.someValue)作为valuesAlias
将s1、s2、p、长度(节点(p))作为正压,
减少(曲线A=9999999,va以值表示)|
案例
当va

生成的结果完全相同,包括排序,但我想这通常不能保证。

对于记录,Neo4jClient现在支持展开