2013-02-06 45 views
1

我正在與一個程序,我有一個記錄爲每個用戶。我的用戶擁有密鑰PhoneNumber的屬性,其值爲字符串數組[454457,897356]。例如,如果我想使用CYPHER查詢:如何在neo4j的密碼查詢中有一個密鑰的多個值?

Start n=node(1) 
Return n 

它返回1個結果爲我的節點(一行),該PhoneNumber列的值是一個數組。 但我想根據我的數組中的值的數量記錄數字,意味着對於我的示例查詢返回2條記錄(2行),並且它的所有屬性都是相同的,但在PhoneNumber列中,其中一個具有值爲454457,另一個值爲897356。有什麼辦法做到這一點?我是否會更改我的密碼查詢或在我的java代碼中進行一些更改? 謝謝。

+0

讀取結果時,你可以這樣做在客戶端,只是重複了在記錄每個電話號碼的原始行(用戶)。 –

回答

2

在Cypher內部還沒有辦法做到這一點。我已經提交一個請求吧,雖然:

https://github.com/neo4j/neo4j/issues/30

+0

不能用foreach來完成嗎? 'FOREACH(x in n.PhoneNumber:...'但我找不出第二部分。 – ulkas

+0

問題是沒有辦法根據集合將結果擴展到所有行之外。(AFAIK)I儘管如此,我很樂意聽到其他人的聲音。 –