ためにみとめ基準を追加し、BasicDBObjectBuilderを使用して、複数のクエリ条件を追加しようとしていません。私は文字列としてXMLが格納されるテキストフィールドを持っているので、正規表現を使ってクエリを構成しています。 "、BasicDBObjectBuilderは、私はモンゴ-DBのJavaドライバーを使用しています単一のオブジェクト
{ "REQUEST_XML" : { "$regex" : ".*Details>[\r\n]<.?.?.?.?action>Change.*"} , "NAME" : "Video"}
.start( "$の正規表現" との最初の部分:
以下は私のクエリであると私は取得しています出力:私は、クエリとして取得しています
regexQuery.put("REQUEST_XML",BasicDBObjectBuilder
.start("$regex", ".*Main>[\r\n]<.?.?.?.?action>"+MainValue+".*")
.add("$regex", ".*Details>[\r\n]<.?.?.?.?action>" + DetailValue+ ".*").get());
regexQuery.put("NAME", "Video");
何があります。メイン> [\ Rの\ nを] <。?。?。?。?アクション> "+ MainValue +"。「)は、クエリに追加取得されていません。
あなたは私が問題が何であるかを教えてくださいことはできますか?
3.xのドライバを使用して
のような出力クエリ:)私は$演算子を使用している。これは、必要がありますそれは魅力のように機能します。しかし、20 lakh以上のレコードのため、クエリは3分以上実行されます。クエリの実行時間を1分未満に最適化する方法はありますか? –