cmd 写法

db + 表名 + find({属性名:{$regex:{/查询的内容/}}})

例:

db.admins.find(user:{$regex:{/hehe/}})

假设显示:如有多条关于hehe的user内容,则返回多条内容。

 

express 写法

关联的数据库 + find({属性名:{$regex:查询内容},function(err,datas){

    if(err){

    }else{

      res.send('datas')

    }

  }

})

例:

// 链接 firstblood 集合
var mongoose = require('mongoose');
var db = mongoose.createConnection('mongodb://localhost:27017/firstblood');
// 链接错误
db.on('error', function(error) {
  console.log(error);
});
// Schema 结构
var Schema = mongoose.Schema;
  var userlistScheMa = new Schema({
  user : String,
  password : String,
  age : Number,
  name : String,
  phone : String,
  address : String,
  numbers : String,
});

// 关联 userlist -> admins 表 表数据有问题,一切都白搭!
exports.userlist = db.model('admins', userlistScheMa,'admins');
exports.db = db;
console.log('数据库启动成功!!!!')

 

注意:这里的关联数据库为 userlist,下面如果写为{$regex:{/req.query.user/}},那么返回值任然是完全匹配才输出,不知道是为什么,如有知晓的大神请指出。

userlist.find(user:{$regex:{req.query.user}},function(err,datas){

    if(err){

      res.send('1')

    }else{

      res.send(datas)//这里的datas即为模糊查询的结果,前端接受处理即可

    }

  }

})

 如需交流可加博主QQ:602697966(备注博客园)

posted on 2017-09-21 16:57  佑之以航  阅读(17073)  评论(0编辑  收藏  举报