共计 867 个字符,预计需要花费 3 分钟才能阅读完成。
自动写代码机器人,免费开通
mgo 指定字符串长度查找数据的案例分析?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是丸趣 TV 小编给大家带来的参考内容,让我们一起来看看吧!
本篇文章给大家带来的内容是关于 mgo 指定字符串长度查找数据的方法介绍(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
工作中偶尔会根据字符串字段的长度来筛选一些数据,这时候可能会用到正则表达式,也可以用 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 性能好,数据量不大的情况下简单测试,确实是正则查找性能好一点,后面有时间进行深一步的研究看看
感谢各位的阅读!看完上述内容,你们对 mgo 指定字符串长度查找数据的案例分析大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注丸趣 TV 行业资讯频道。
向 AI 问一下细节
丸趣 TV 网 – 提供最优质的资源集合!