アイテムのプライマリセットを返すときに、追加のオプションの関係を照会する正しい方法を理解しようとしています (または、同じことを達成するためのより慣用的な方法があるかどうか)。
http://console.neo4j.org/?id=747b3xで例を設定しました。3 つのノードがあり、そのうちの 1 つは 2 つのタグと 1 つの IS_A を持っています。すべてのアイテムを照会して、アイテム自体と関連するタグやものを返したいと思います。
作成しようとしている結果セットは次のとおりです。
Item Tags IS
------- ---------- --------
1 ['A', 'B'] null
2 null null
3 null 'foo'
これは私のクエリが現在どのように見えるかです:
MATCH (i:Item)
WHERE HAS(i.name) // in reality, statements to narrow down i
WITH i
MATCH (i)-[?:HAS]->(t:Tag), (i)-[?:IS_A]->(s:Thing)
RETURN i.name AS item, COLLECT(t.name) AS tags, s.name AS is
コンソールでは、これにより null ポインター例外が発生しますが、私のサーバーでは、タグとそれらに関連付けられたものの両方を持つアイテムのみが返されるようです。これを達成するための最良の方法は何ですか?
ありがとう!