2

FTSearch を使用して「-」を検索する可能性があるかどうかは誰にもわかりませんか?

Set col = db.ftsearch({ [services] = "-"}, 0)

dat requests は機能せず、代わりに次のように言います:

Notes エラー: 全文エラー。詳細については、ログを参照してください ( [services] = "-")

4

2 に答える 2

4

短い答えはノーです。

全文検索では、ほとんどの記号文字が空白として扱われます。例外は、検索語自体が引用符で囲まれている場合です。

FT 検索エンジンも検索に3-gramを使用します。これは、3 文字未満では期待どおりの結果が返されないことを意味します。空白はその検索で処理されますが、見つかったテキストのコンテキストでのみ処理されます。

たとえば、「ce」は「スペース」を検索しますが、「スペース」は検索しません。または「スペース」または「間隔」。

「-」のみを含むフィールドを探している場合、より良い解決策は、そのフィールド値を含む列を含むビューを作成するか、そのフィールドがその値であることに基づいてフィルター処理することです。

于 2013-10-08T06:50:48.377 に答える
0

ビューで全文検索をしようとしているように見えますか? ビューで作業している場合、@Formula 言語を使用すると、おそらく応答時間が短縮され、サーバーへの影響が少なくなります。

データベース全体の全文検索を避けるようにしています。ビュー コレクションで検索を使用すると、より迅速に結果を得ることができます。db で使用できるビューの数に制限はありません。何事も費用はかかりますが。より良い結果を得るために使用できる小さなトリックがたくさんあります。あなたがやろうとしていることの詳細を教えてください。

于 2013-10-07T18:32:01.990 に答える