2016-07-16 89 views
0

我有以下代碼:如何知道哪些OptionalMatch在查詢結果匹配,Neo4j的

var q = new CypherFluentQuery(client) as ICypherFluentQuery; 
     q = q.OptionalMatch("(n:subject)-[r4:SCP_IN_SC]-(sc:Spec)"); 
     q = q.OptionalMatch("(sc)-[r5:SCP_IN_SC]-(p)"); 
     q = q.OptionalMatch("(p)-[r6:SCP_IN_SCT]-(t:Tag)"); 
     q = q.OptionalMatch("(t)-[r7:SCP_IN_SCT]-(n)"); 
     q = q.OptionalMatch("(p)-[r8:SCP_IN_SCC]-(c:Catalog)"); 

我怎麼能找到哪些可選匹配查詢結果是否匹配?

回答

0

任何OPTIONAL MATCH(顯然不限於1)匹配將導致結果中的非空元素,即sc如果第一個不匹配則爲空,如果匹配則爲。

作爲一個側面節點,希望您對節點(額外標籤,WHERE子句等)有更多限制,因爲否則它看起來像pn實際上是相同的節點。

相關問題