我想查询与 SQL 的东西like
查询:
SELECT * FROM users WHERE name LIKE '%m%'
如何在 MongoDB 中实现相同的功能?我在文档中找不到like
的运算符。
那必须是:
db.users.find({"name": /.*m.*/})
或者,类似的:
db.users.find({"name": /m/})
你正在寻找某处包含 “m” 的东西(SQL 的 ' %
'运算符等同于 Regexp 的' .*
'),而不是将 “m” 锚定到字符串开头的东西。
db.users.insert({name: 'paulo'})
db.users.insert({name: 'patric'})
db.users.insert({name: 'pedro'})
db.users.find({name: /a/}) //like '%a%'
出:paulo,patric
db.users.find({name: /^pa/}) //like 'pa%'
出:paulo,patric
db.users.find({name: /ro$/}) //like '%ro'
出:佩德罗
在
你可以做:
db.users.find({'name': {'$regex': 'sometext'}})