数字能排序字符串不能排序_解决mongoDBBigDecimal字符串数值不能直接排序的问题...

更新时间:2023-06-06 03:16:48 阅读: 评论:0

数字能排序字符串不能排序_解决mongoDBBigDecimal字符串
飞向人马座数值不能直接排序的问题...
今天在做⾦额排序的时候,发现mongoDB⾃带的sort排序,⽆法⽀持BigDecimal排序。
⼀般情况下,我们都是⽤⾃带的sort来排序,但是我发现,对于这种BigDecimal类型,它是⽆法直接排序的。追朔根本原因,是由于该机制是按照字符串来解析,会按照第⼀个数字⼤⼩来排序,所以它会认为90⽐700还要⼤。
⽐如:db.getCollection(集合名称).find({}).sort({"realTimeConsume":-1});
查询出来的结果如下:
很明显,这种默认排序是达不到我们的要求的。
下⾯说下我的解决⽅案,希望可以帮到⼤家!
1.对于MongoDB查询语句
重新设置默认的collation属性.collation({"locale": "zh", numericOrdering:true})再排序。
语句如下:
这样排序就按照数值来排序,就OK了。叫卖广告
双山寺
红十字标志
2,对于程序中代码实现
在条件查询之前,重新设置new Query().collation的值,这样就可以完美的解决了。暗恋表白的句子
电视剧大全电视剧大全免费Query query = new Query();
Document source = new Document();
source.put("locale", "zh");
那个影响我的人source.put("numericOrdering", true);
描写花的四字词语Collation collation = Collation.from(source);

本文发布于:2023-06-06 03:16:48,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/1000949.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:排序   字符串   查询   不能   电视剧
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图