翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
クエリの名前付きパスには、常に追加料金がかかります。これにより、レイテンシーとメモリ使用量の面でペナルティが発生する可能性があります。次のクエリについて考えます。
MATCH p = (n)-[:commentedOn]->(m)
WITH p, m, n, n.score + m.score as total
WHERE total > 100
MATCH (m)-[:commentedON]->(o)
WITH p, m, n, distinct(o) as o1
RETURN p, m.name, n.name, o1.name
上記のクエリでは、ノードのプロパティのみを確認したいと仮定すると、パス「p」を使用する必要はありません。名前付きパスを変数として指定することで、DISTINCT を使用した集約オペレーションは、時間とメモリの使用量の両方でコストが高くなります。上記のクエリのより最適化されたバージョンは次のとおりです。
MATCH (n)-[:commentedOn]->(m)
WITH m, n, n.score + m.score as total
WHERE total > 100
MATCH (m)-[:commentedON]->(o)
WITH m, n, distinct(o) as o1
RETURN m.name, n.name, o1.name