如何用“ like”查询MongoDB?
问题内容:
我想用SQLlike查询来查询一些东西:
SELECT * FROM users WHERE name LIKE '%m%'
我如何在MongoDB中实现相同目标?我like在文档中找不到运算符。
问题答案:
那必须是:
db.users.find({"name": /.*m.*/})
或类似:
db.users.find({"name": /m/})
您正在寻找某种在某处包含“ m”的东西(SQL的' %'
运算符等效于Regexp的' .*'
),而不是在字符串的开头固定了“ m”的东西。
注意: mongodb使用的正则表达式比sql中的“ LIKE”更强大。使用正则表达式,您可以创建您想像的任何模式。
有关正则表达式的更多信息,请参阅此链接 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/Regular_Expressions