MongoDB 字符串值长度条件查询
生活随笔
收集整理的这篇文章主要介绍了
MongoDB 字符串值长度条件查询
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
在实际项目中常常会有根据字段值长度大小进行限制查询,例如查询商品名称过长或过短的商品信息,具体的实现方式可能有多种,在此记录常见的两种实现
使用 $where 查询(性能稍逊一些)
| 12345 | //查询商品名称长度大于25个字符的商品db.item.find({item_name:{$exists:true},$where:"(this.item_name.length > 25)"}).limit(5)//查询商品名称长度小于5个字符的商品db.item.find({$where:"this.item_name.length < 5"}).limit(5) |
使用正则表达式查询(性能比$where 高)
| 12345 | //查询商品名称长度大于25个字符的商品db.item.find({"item_name": {"$exists": true, "$regex": /^.{25,}$/}}).limit(5)//查询商品名称长度小于5个字符的商品db.item.find({"item_name": {"$regex": /^.{0,5}$/}}).limit(5) |
Java 使用 Spring data mongodb:
| 12345 | String pattern = String.format("^.{%s,}$", overlength);Criteria criteria = Criteria.where("item_name").regex(pattern, "m");Query query = new Query(criteria);mongoTemplate.find(query, Item.class) |
参考地址:https://docs.mongodb.com/manual/reference/operator/query/regex/
原文转自: http://www.xuexiyuan.cn/article/detail/74.html
总结
以上是生活随笔为你收集整理的MongoDB 字符串值长度条件查询的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: “悬崖栖归月”下一句是什么
- 下一篇: Eclipse中的集成Git插件删除线上