我想查询与 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'}})