スポーツとユーザーをリストし、結合テーブル (UserSports) を持つデータベースがあります。
Sports Table:
ID Name
1 Running
2 Swimming
3 Football
4 Baseball
5 Basketball
Users Table:
ID Name
1 George
2 Jane
3 Alex
UsersSports
UserID SportID
1 2
3 1
2 4
2 5
lucene.net を使用してスポーツを検索したいので、それらのインデックスを作成し、名前を分析します。これはうまくいきます。「ボール」を検索すると、サッカー、野球、バスケットボールが返ってきます。私がやりたいのは、特定のユーザーが UserSports に記録を持っていないスポーツのみを返すことです。したがって、Jane が「ball」を検索した場合、Football のみが返されます。not in
aまたは aを使用して SQL でこれを行うことができ、left join ... where join is null
それは正常に機能しますが、Lucene.net を検索するファジー ロジックを追加したいと考えています。
Lucene.Net でデータをインデックス化する最良の方法は何ですか?