2016-12-05 125 views
0

我將運行一些複雜的MATCH,它會向我返回一個節點標籤。然後,我想修剪該節點標籤的前綴,並使用其餘部分來進一步執行匹配。我試圖通過將返回標籤的剩餘部分分配給變量,然後將該變量用於標籤MATCH中的節點。使用變量來匹配Neo4J中的節點標籤CYPHER

但是我覺得這不起作用,因爲我們不能使用變量來標記MATCH中的節點。

例如創建簡單的兩個節點圖:

CREATE (:PrefixNodeLabel) 
CREATE (:NodeLabel) 

此:

MATCH(n:PrefixNodeLabel) 
RETURN substring(labels(n)[0],6) 

正確返回NodeLabel

我試圖用這個標記一個節點:

MATCH(n:PrefixNodeLabel) 
WITH substring(labels(n)[0],6) AS nodeLabel 
MATCH(m:nodeLabel) //using a variable to label a node 
RETURN m 

但這不返回(:NodeLabel)節點。

我知道我在做什麼可能看起來很奇怪。但無論如何,我該如何做到這一點?

回答

0

你不能到位標籤

的傳遞變量啊我希望我可以用變量中包含`$ {VARIABLENAME}一些額外的語法'等。您可以通過

+0

實現這一點,額外查詢有點痛苦。 – Mahesha999

相關問題