Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >小程序云开发模糊查询,实现数据库多字段的模糊搜索

小程序云开发模糊查询,实现数据库多字段的模糊搜索

原创
作者头像
编程小石头
修改于 2019-11-07 02:22:23
修改于 2019-11-07 02:22:23
4.9K0
举报

最近做小程序云开发时,用到了一个数据库的模糊搜索功能,并且是要求多字段的模糊搜索。

网上也有一大堆资源,但是都是单个字段的搜索。如下图

上图只可以实现time字段的模糊搜索。但是我们如果相对数据表里的多个字段做模糊查询呢?该怎么办呢。

多字段模糊搜索

一,如我们的数据表里有以下数据,我们想同时模糊查询name和address字段

如我们搜索“周杰”可以看到我们查询到下面两条数据。

二,如我们搜索“编程”,可以搜索到下面数据

可以看到我们搜索到的两条数据,一个是name字段为 编程小石头,

一个是address字段里包含“编程“ 字样。

下面把代码贴给大家

代码语言:txt
AI代码解释
复制
    let key = "编程小石头";
    console.log("查询的内容", key)
    const db = wx.cloud.database();
    const _ = db.command
    db.collection('qcl').where(_.or([{
        name: db.RegExp({
          regexp: '.*' + key,
          options: 'i',
        })
      },
      {
        address: db.RegExp({
          regexp: '.*' + key,
          options: 'i',
        })
      }
    ])).get({
      success: res => {
        console.log(res)
      },
      fail: err => {
        console.log(err)
      }
    })

key就是我们要搜索的关键字。主要是用到了数据库查询的where,or,get方法。

代码都给大家贴出来来,如果对云开发云数据库还不是很了解的同学可以去翻看下我以前写的文章。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档