MongoDB模糊查询命令

作者:袖梨 2022-06-29

命令行查询:

1、可以使用 .* 来模糊查询,如下是查询姓陈的用户。

db.customers.find( { name : /陈.*/i } );
 
2、也可不带*号

db.fs.files.find({filename:/install_mongo.sh/i})

PHP查询:

$query=array("name"=>newMongoRegex("/.*”.$name.".*/i"));
$db->find($query);

简单的几万数据没有关系,但是二百多万数据,对文本字段进行模糊查询,基本查不出来,如何提高查询效率

解决办法

英文就建full text index,中文嘛,呵呵,要另找全文索引方案来帮忙,比如elasticsearch

可以用Lucence/Sphinx结合MongoDb做搜索查询,Mongodb查询效率确实比较低

相关文章

精彩推荐