0

私はfull-text-indexesneo4jグラフデータベースを検索するために使用していました。ただし、ユーザーが間違ったスペルを入力した場合や、クエリがどの結果にも一致しない場合に備えて。そのような場合にこれを処理する方法またはdid you mean一種の機能はありますか?

また、ユーザーが検索しているクエリに基づいて、検索をよりスマートにするにはどうすればよいでしょうか? SearchKickに出くわしましたが、neography との統合はありません。

4

1 に答える 1

1

lucene クエリにあいまいさを導入できます。'~' 記号をクエリに追加して要因を指定することで、これを行うことができます。たとえばname:mistqke~0.8、テキスト "mistake" を検索する必要があります。あいまい係数は 0 から 1 の間です。値が 1 に近いほど一致度が高くなります。

ワイルドカードとファジー クエリを組み合わせたい場合は、次のようなものを使用できます。

START n=node:index('name:mistqke~0.8 or name:*mistqke*')
RETURN DISTINCT n;

lucene クエリの「OR」と RETURN 句の「DISTINCT」に注意してください。

于 2014-09-18T14:53:53.997 に答える