mongodb按照字段模糊查询方法

数据库直接查询

db.student.find({name:{$regex:'jack', $options:'i'}})
db.student.find({name:{$regex:/jack.*/i}})
db.student.find({name:/jack/i})

开源组件使用

github.com/globalsign/mgo使用
query := bson.M{Name: bson.M{"$regex": jack, "$options": "$i"}}
err = c.Find(query).All(&entityList)

option的值包含:

  • i(不区分大小写),
  • m(当使用^与$符号模糊匹配时,作用于屏蔽中间的换行符) ,
  • x(忽略注释,以#开头 /n结尾),
  • s(允许所有字符包括换行符参与模糊匹配)

对比

MySQL MongoDB
select * from student where name like ‘%jack%’ db.student.find({name:{$regex:/jack/}})
select * from student where name regexp ‘jack’ db.student.find({name:/jack/})

你可能感兴趣的:(MongoDB)