【发布时间】:2016-05-13 21:08:44
【问题描述】:
我的数据库中有这三个用户,它们具有以下键:
乔恩 111
乔恩-222
乔恩-333
我目前写的代码只能通过key在数据库中找到一个用户。 我怎样才能返回所有这些用户?
public void getMongoDB() {
DB db = mongo.getDB("people");
DBCollection table = db.getCollection("users");
BasicDBObject searchQuery = new BasicDBObject();
searchQuery.put("key", "Jon-111"); // what do I do here to return all the 'Jon' users?
DBCursor cursor = table.find(searchQuery);
int dbSize = cursor.size(); // size is 1
while (cursor.hasNext()) {
logger.debug(""+cursor.next()+"\n");
}
logger.debug("users table");
}
提前致谢
【问题讨论】:
-
类似于
"key","LIKE jon-*'。但是我从未使用过 MongoDb。所以它可能取决于 MongoDb 的具体情况。 -
@MikeT 这是一种非常标准的 SQL 方法,但是对于 Java/Mongo,它稍微复杂一些,需要正则表达式,请参阅下面的答案以获取一些示例。