0
私はフィールドを持つが得られるが.IN()と.Where()、それは2566のレコードの合計をコレクションにRavenDB:異なる結果
Index(x => x.Status, FieldIndexing.Default);
としてインデックス付けされます。私はこのようなクエリを実行するとき
は今:
var query = _ravenSession
.Query<MyIndex.ReduceResult, MyIndex>()
.Statistics(out stats);
query = query.Where(x => x.Status != "inactive" && x.Status != "invalid" && x.Status != "sold");
私は2512
の総結果数を取得しかし、私はこのようなクエリ場合:
query = query.Where(x => !x.Status.In("inactive", "invalid", "sold"));
私は、合計結果を得ますこのカウントはどのように異なっていますか?
私は、最初のクエリが
{((((-Status:非アクティブとステータス:*)AND -Status:無効)) と-Status:販売)}に変換することを、見ることができます
2つ目:
{(: AND - @ < in`ステータス>:(無効、無効、販売されています) )}
ありがとうございました。 C#の観点からは、これらの2つの式は同じでなければなりません。そして、私はLucene構文に深く関わっていないので、私を捨てました。私があなたを正しく理解していれば、最初のクエリ(処理時)は暗黙的にヌルチェックを含みます。そして、私は実際にいくつかのレコードのフィールドでnull値を持っていました –