0

次の暗号クエリが複数回呼び出されています。

start n=node:MyIndex(Name="ABC")
return n

次に、コード内の別の場所

start m=node:MyIndex(NAME="XYZ")
return m

私のデータベースは Azure でホストされているため、待機時間やパフォーマンスの問題が発生しています。プロセスをスピードアップし、複数回の往復を減らすために、複数の Cypher クエリを 1 つに結合することを考えました。

実際には、ルックアップで 10 以上のノードを取得していますが、簡単にするために、以下に 2 つのノードだけを例として示すことにしました。

start n=node:MyIndex(Name="ABC"), m=node:MyIndex(NAME="XYZ")
return n, m

私の目標は、10回以上ではなく、1回の往復でできることを取得することです. すべてのノードでのインデックス ルックアップが成功すると、正常に機能します。ただし、 1 つのインデックス ルックアップが失敗しても、Cypher クエリは 0 行を返します。欠落しているノードの n または m で同等の NULL を取得することを望んでいました。しかし、運が悪い。

私が間違っていることと、往復を減らすための回避策を提案してください。どうもありがとう!

4

1 に答える 1

1

lucene 構文でパラメーター化されたクエリを使用できます。例:

START n=node:MyIndex({query}) return n

とパラメータ化

{'query':'Name:(ABC XYZ)'}

名前のリストは、探している名前をスペースで区切った文字列です。

于 2013-05-09T14:55:31.553 に答える