一尘不染

如何使用“like”查询 MongoDB

sql

我想用 SQL 的like查询来查询一些东西:

SELECT * FROM users  WHERE name LIKE '%m%'

如何在 MongoDB 中实现相同的目标?like我在文档中找不到操作符。


阅读 164

收藏
2022-02-18

共1个答案

一尘不染

那必须是:

db.users.find({"name": /.*m.*/})

或者,类似的:

db.users.find({"name": /m/})

您正在寻找在某处包含“m”的东西(SQL 的 ‘ %‘ 运算符等同于正则表达式’ ‘ .*‘),而不是在字符串开头锚定“m”的东西。

注意: MongoDB 使用的正则表达式比 SQL 中的“LIKE”更强大。使用正则表达式,您可以创建您想象的任何模式。

有关正则表达式的更多信息,请参阅正则表达式(MDN)。

2022-02-18