mgo指定字符串长度查寻数据的办法介绍(代码)
发布时间:08/01 来源:未知 浏览:
关键词:
工作中偶然会依据字符串字段的长度来筛选一些数据,这时候可能会用到正则表达式,也可以用mongodb的$where,正则表达式在不一样的说话中,准确写法又有所悬殊,特此记载一下。
假设查寻comment字段字符串长度大于10的数据,mongodb下令行写法如下:
$where写法:
find({"comment":{"$exists":true},"$where":"this.comment.length>10"})
正则表达式写法:
find({"comment":{"$regex":/^.{10,}$/}})
go说话中写法如下:
$where写法:
collection.Find(bson.M{"comment": bson.M{"$exists": true}, "$where": "this.comment.length > 10"})
正则表达式写法:
collection.Find(bson.M{"comment": bson.M{"$exists": true, "$regex": bson.RegEx{`^.{10,}$`, ""}}})
其他前提正则:
^.{n,m}$ n <= 长度 <= m
^.{n}$ 长度 = n
这个长度是字符的长度,比方"正则表达式"长度就是5
至于查寻机能方面,网上说正则比$where机能好,数据量不大的状况下简略测试,的确是正则查寻机能好一点,背面有工夫进行深一步的研究看看
本篇文章到这里就已经全部完毕了,更多其他出色内容可以关注百分百源码网的mongodb视频教程栏目!
以上就是mgo指定字符串长度查寻数据的办法介绍(代码)的细致内容,更多请关注 百分百源码网 其它相干文章!