0
特定のタイプのすべてのノードを返すクエリがあります。私は全体のセットに均等に分布している10の結果しか戻そうとしていません。neo4j:結果の全長に基づいて結果をスキップする方法はありますか
私が試した:
$START t=node(*)
MATCH (image:Image) RETURN image.name ORDER BY image.name
SKIP toInt(count(image.name)/10);
をしかし、これは私がSKIPの変数を使用することはできませんよというエラーメッセージを返します。
私はその後、カウント機能で文全体を試してみて、再実行ができることを考えた:
START t=node(*)
MATCH (image:Image) RETURN image.name ORDER BY image.name
SKIP toInt(count(MATCH (image:Image) RETURN image.name)/10);
しかし、これは無効な入力エラーを返します:
Invalid input 'R': expected whitespace, comment, '.', node labels, '[', "=~", IN, STARTS, ENDS, CONTAINS, IS, '^', '*', '/', '%', '+', '-', '=', "<>", "!=", '<', '>', "<=", ">=", AND, XOR, OR, ',' or ')' (line 3, column 38 (offset: 112))
"SKIP toInt(count(MATCH (image:Image) RETURN image.name)/10);"
^
10個の結果しか返さない場合は、なぜ「LIMIT 10」を使用しないのですか? –
@GaborSzarnyas limit 10は最初の10を返すだけで、すべての画像が時間順にソートされ、等距離から10サンプルを取得したい(つまり、セット内に50個の画像がある場合は、 – user3297011
よろしくお願いします。次の質問:どのバージョンを使用していますか? Neo4j 2.0以降では、 'START'節は必要ありません(あなたは' t'の値をとにかく使用しません)。 –