是否可以在MongoDB中包含AND
,OR
,NOTIN
条件和文本搜索?
e.g。
final DBObject textSearchCommand = new BasicDBObject();
textSearchCommand.put("text", "user");
textSearchCommand.put("search", fullTextSearch.text)
textSearchCommand.put("isDeleted", false)\\ this is AND condition here, but this does not work
final CommandResult commandResult = db.command(textSearchCommand);
有没有解决这个问题?
答案 0 :(得分:0)
你没有清楚地说明你想要对所有字段进行AND操作,或者你想要OR操作中的前两个字段,最后一个字段,即isDeleted是在AND操作中的前两个字段。
我在考虑你想要AND Operation中的所有三个字段
你在mongodb中使用AND,OR运算符来查询全文。
NOTIN即$ nin运算符,您必须使用特定字段。
以下是mongodb中带$和运算符的代码
final BasicDBList textSearchCommand = new BasicDBList();
/* List is used to add element */
textSearchCommand.add( new BasicDBObject("text", "user"));
textSearchCommand.add( new BasicDBObject("search", fullTextSearch.text));
textSearchCommand.add( new BasicDBObject("isDeleted", false));
BasicDBObject queryDoc = new BasicDBObject("$and", textSearchCommand);
/* Above Statement Adds and operator to query */
final CommandResult commandResult = db.command(queryDoc);
您可以使用$或相同的$和。
NotIn运算符,即$ nin与特定字段一起使用。
以下是链接,您可以使用参考。