我正在使用Neo4j .NET客戶端ExecuteGetCypherResults
來運行密碼。它期望所有的東西都會回到一個專欄中。我有簡單的課JobType
它包含一個列表JobSpecialties
就可以了。在數據庫中,這被建模爲與專業有關係的類型。Cypher查詢返回相關節點爲兒童
我需要返回結果因爲如此,在單個列一個暗號查詢。相關Specialties
應該是Type
節點的子屬性我希望查詢看起來像這樣:
start s=node:node_auto_index(StartType='JobTypes')
match s-[:starts]->t, t-[:SubTypes]->ts
return {Id: t.Id, Name: t.Name, JobSpecialties: ts}
但是,這是行不通的。如果這甚至可能,我無法從文檔中找出答案。如果有更好的方法將結果返回給.Net客戶端,我願意接受建議。
他要求在單個列中輸出結果(如在return子句中沒有逗號)。他特別要求這樣做,因爲[.Net Neo4jClient](http://hg.readify.net/neo4jclient/wiki/Home)會在嘗試返回多列時拋出錯誤。 – ean5533 2013-02-15 16:20:24
應該像這樣工作:start s = node:node_auto_index(StartType ='JobTypes') match s - [:SubTypes] - > js return [s.Id,s.Name,js]; – 2013-02-20 07:55:19
@MichaelHunger在陣列投影中你不能有不同的類型,Cypher會嚇壞了。如果在數組中包含一個字符串和一個節點,則該節點將轉換爲其最長可能的形式(每個屬性指向該節點的一個url)。這是無法使用的。 – Tyrsius 2013-02-20 17:54:30