スマート検索機能の実装について質問があります。たとえば、さまざまな電子メール アプリケーションの「スマート メールボックス」のようなものを考えてみましょう。データ (電子メール) がデータベースに保存されており、クエリが作成されるフィールドに応じて、エンド ユーザーにさまざまなオプションを提示するとします。現時点では、主語、動詞、目的語のアプローチを想定しましょう…</p>
たとえば、次のものがあるとします。
件名: メッセージ、to_address、from_address、件名、date_received
動詞: 含む、does_not_contain、is_equal_to、greater_than、
less_than
さて、明確でない場合に備えて、後で使用するためにスマート検索/メールボックスの基準を保存 (および後で取得/提示) するためのテーブル構造が必要です (ただし、何らかの外部 XML 風ファイルに反対しているわけではありません)。 . 例として、SVO を使用すると、「2 つの日付の間の日付」のクエリを簡単に保存して再構築できます。単純に「日付より大きい」と「日付より小さい」を使用します。しかし、同じスマート検索で、別の基準で「間」を OR 演算したい場合はどうなるでしょうか。手に負えなくなる可能性があることがわかります-必ずしもクエリの作成ではありません(かなり単純化されているため)。
おそらく、もっと細かいレベルで考える必要があります。おそらく、ALL OR NOTHING タイプのスマート検索にするのではなく、各エントリに対して個別に AND または OR をユーザーが選択できるようにする必要があるかもしれません (つまり、MATCH ALL または MATCH ANY の代わりに、単純に選択できるようにする必要があります。ヒドラに変えたくない)。
任意の入力をいただければ幸いです。質問が少し支離滅裂でしたら申し訳ありません。遅いです、そして私は私の脳が乾杯しています。
一番。