示例:
> db.stuff.save({"foo":"bar"});
> db.stuff.find({"foo":"bar"}).count();
1
> db.stuff.find({"foo":"BAR"}).count();
0
发布于 2009-12-08 06:46:04
你可以使用regex。
在您的示例中,这将是:
db.stuff.find( { foo: /^bar$/i } );
不过,我必须说,也许你可以在导入的过程中将值小写(或大写),而不是每次找到它时都会招致额外的成本。显然,这不适用于人名之类的,但可能是像标签这样的用例。
发布于 2012-07-13 04:39:23
如果您需要从一个变量创建regexp,这是一种更好的方法:https://stackoverflow.com/a/10728069/309514
然后,您可以执行以下操作:
var string = "SomeStringToFind";
var regex = new RegExp(["^", string, "$"].join(""), "i");
// Creates a regex of: /^SomeStringToFind$/i
db.stuff.find( { foo: regex } );
这样做的好处是更具编程性,或者如果你经常重用它,你可以通过提前编译它来提高性能。
发布于 2018-09-04 22:37:23
db.company_profile.find({ "companyName" : { "$regex" : "Nilesh" , "$options" : "i"}});
https://stackoverflow.com/questions/1863399
复制相似问题