javascript – 如何使MongoDB查询排序字符串与-number postfix?

前端之家收集整理的这篇文章主要介绍了javascript – 如何使MongoDB查询排序字符串与-number postfix?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个查询
ownUnnamedPages = Entries.find( { author : this.userId,title : {$regex: /^unnamed-/ }},{sort: { title: 1 }}).fetch()

这将返回以下排列的数组:

[ { 
    title: 'unnamed-1',text: '<p>sdaasdasdasd</p>',tags: [],_id: 'Wkxxpapm8bbiq59ig',author: 'AHSwfYgeGmur9oHzu',visibility: 'public' },{ 
    title: 'unnamed-10',text: '',visibility: 'public',_id: 'aDSN2XFjQPh9HPu4c' },{ 
    title: 'unnamed-2',text: '<p>kkhjk</p>',_id: 'iM9FMCsyzehQvYGKj',{ 
    title: 'unnamed-3',_id: 'zK2w9MEQGnwsm3Cqh',visibility: 'public' }]

问题是,它似乎排序在第一个数字字符,所以它认为正确的顺序是1,10,2,3,等….
我真正想要的是在整个数字部分进行排序,以便10个结束.

我不想这样做,通过增加数字,如01或001的数字.

我该怎么做?

解决方法

MongoDB不能按字符串存储的数字排序.您必须将数字作为整数存储在其自己的字段中,以前导零填充,或者在从数据库返回结果之后进行排序.
原文链接:https://www.f2er.com/js/150701.html

猜你在找的JavaScript相关文章