MongoDB数据库,使用LIKE查询

发布于 2024-11-30 22:46:48 字数 303 浏览 0 评论 0原文

我有一个 MongoDB,我可以使用“国家/地区”查询数据库,效果很好。但我现在还想用自由文本搜索“标题”字段。与 SQL 中的 WHERE title LIKE '%title%' 一样,

BasicDBObject query = new BasicDBObject();
query.put("country", country);
query.put("title", %title%);
DBCursor cursor = collection.find(query);

我将如何使用 MongoDB 做到这一点?

I have a MongoDB, I can query the database with 'Country' that works fine. But I now want to also search on the field 'title' with free text. As with in SQL the WHERE title LIKE '%title%'

BasicDBObject query = new BasicDBObject();
query.put("country", country);
query.put("title", %title%);
DBCursor cursor = collection.find(query);

How would I do this with MongoDB?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

青衫负雪 2024-12-07 22:46:48

您可以使用正则表达式
在你的情况下, /title/i 应该可以工作(因为类似 MySQL 的查询通常不区分大小写,/i 表示不区分大小写的匹配)

You can use regular expressions
In your case, /title/i should work (as MySQL like query is usually case-insensitive, /i denotes case-insensitive match)

妥活 2024-12-07 22:46:48

用这个
这个模式是java正则表达式

Pattern title = Pattern.compile("title");
BasicDBObject dbc=new BasicDBObject();
dbc.put("title", title );
DBCursor cursor = collection.find(query);

这会起作用,..试试吧

Use this
this pattern is java regular expression

Pattern title = Pattern.compile("title");
BasicDBObject dbc=new BasicDBObject();
dbc.put("title", title );
DBCursor cursor = collection.find(query);

This will work,.. try it

绝不服输 2024-12-07 22:46:48

如果你在变量中得到了关键字...

Model.find( { FIELD_NAME : { $regex: KEYWORD, $options: 'i' }});

并且如果你得到的关键字只是一个字符串...

Model.find( { FIELD_NAME : /string/i });

应该像 SELECT * FROM Model WHERE FIELD_NAME LIST = KEYWORD 一样工作。

'i' 切换不区分大小写,以便您可以搜索单词,不区分大小写。

if you got the keyword in variable...

Model.find( { FIELD_NAME : { $regex: KEYWORD, $options: 'i' }});

and if you got the keyword as just a string...

Model.find( { FIELD_NAME : /string/i });

should work like SELECT * FROM Model WHERE FIELD_NAME LIST = KEYWORD.

'i' toggles case-insensivity, so that you can search the word with no case exception.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文