资讯专栏INFORMATION COLUMN

php mongodb模糊搜索

jubincn / 1603人阅读

摘要:以前一直使用数据库,模糊搜索关键字就能搞定。最近接入了平台,一时无法适应,踩了一些坑,在此记录下来,希望对其他人能够有用。对于普通非文本所有字段如何进行模糊搜索答案使用正则表达式。

以前一直使用mysql数据库,模糊搜索like关键字就能搞定。最近接入了mongodb平台,一时无法适应 ,踩了一些坑,在此记录下来,希望对其他人能够有用。

1.mongodb对于普通非文本所有字段如何进行模糊搜索
答案:使用正则表达式。
对于过去经常使用mysql的同学可能不太适合,因为一想到正则表达式,我们就会想到对性能的影响,通常是能不用就不用,但是mongodb除了文本索引只能使用正则表达式进行模糊搜索。

2.如何在php中使用正则表达式
答案:MongoDBBSONRegex(php7使用了mongodb扩展),mongoregex(php7以前使用mongo扩展)

3.两者在使用细节上的区别
答案:MongoDBBSONRegex在构造regex对象时传入的字符串不需要前后的斜线,选项通过第二个参数传入

$regex = new MongoRegex("/^$search/");

$regex = new  MongoDBBSONRegex("^{$search}", "i");

当然了,如果要使用全文本索引mongodb也是支持的

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/31151.html

相关文章

  • php mongodb模糊搜索

    摘要:以前一直使用数据库,模糊搜索关键字就能搞定。最近接入了平台,一时无法适应,踩了一些坑,在此记录下来,希望对其他人能够有用。对于普通非文本所有字段如何进行模糊搜索答案使用正则表达式。 以前一直使用mysql数据库,模糊搜索like关键字就能搞定。最近接入了mongodb平台,一时无法适应 ,踩了一些坑,在此记录下来,希望对其他人能够有用。 1.mongodb对于普通非文本所有字段如何进行...

    zhou_you 评论0 收藏0
  • 数据库收集 - 收藏集 - 掘金

    摘要:前言在使用加载数据数据库常见的优化操作后端掘金一索引将放第一位,不用说,这种优化方式我们一直都在悄悄使用,那便是主键索引。 Redis 内存压缩实战 - 后端 - 掘金在讨论Redis内存压缩的时候,我们需要了解一下几个Redis的相关知识。 压缩列表 ziplist Redis的ziplist是用一段连续的内存来存储列表数据的一个数据结构,它的结构示例如下图 zlbytes: 记录整...

    muddyway 评论0 收藏0
  • 数据库收集 - 收藏集 - 掘金

    摘要:前言在使用加载数据数据库常见的优化操作后端掘金一索引将放第一位,不用说,这种优化方式我们一直都在悄悄使用,那便是主键索引。 Redis 内存压缩实战 - 后端 - 掘金在讨论Redis内存压缩的时候,我们需要了解一下几个Redis的相关知识。 压缩列表 ziplist Redis的ziplist是用一段连续的内存来存储列表数据的一个数据结构,它的结构示例如下图 zlbytes: 记录整...

    Little_XM 评论0 收藏0
  • 数据库收集 - 收藏集 - 掘金

    摘要:前言在使用加载数据数据库常见的优化操作后端掘金一索引将放第一位,不用说,这种优化方式我们一直都在悄悄使用,那便是主键索引。 Redis 内存压缩实战 - 后端 - 掘金在讨论Redis内存压缩的时候,我们需要了解一下几个Redis的相关知识。 压缩列表 ziplist Redis的ziplist是用一段连续的内存来存储列表数据的一个数据结构,它的结构示例如下图 zlbytes: 记录整...

    XUI 评论0 收藏0
  • 基于mongodb搜索分页

    摘要:模糊查询并分页建立数据库代码如下页面布局这里只需要搜索框和搜索按钮,再点击按钮时,执行方法并发送请求代码如下请输入项目名称搜索设置每页显示页码设置当前页码为获取查找条件为模糊查询固定语法,为参数刷新页面查找内容查找个数重新分页改变页码 mongodb模糊查询并分页 1.建立数据库 代码如下: var mongoose = require(mongoose); var shortid =...

    YPHP 评论0 收藏0

发表评论

0条评论

jubincn

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<