我有一個查詢:如何使用-number postfix對MongoDB查詢進行排序?
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: '',
author: 'AHSwfYgeGmur9oHzu',
visibility: 'public',
_id: 'aDSN2XFjQPh9HPu4c' },
{
title: 'unnamed-2',
text: '<p>kkhjk</p>',
tags: [],
_id: 'iM9FMCsyzehQvYGKj',
author: 'AHSwfYgeGmur9oHzu',
visibility: 'public' },
{
title: 'unnamed-3',
text: '',
tags: [],
_id: 'zK2w9MEQGnwsm3Cqh',
author: 'AHSwfYgeGmur9oHzu',
visibility: 'public' }]
的問題是,它似乎排序的第一個數字字符所以它認爲正確的順序是1, 10,2,3等... 我真正想要的是它對整個數字部分進行排序,因此10將在最後。
我不想通過爲數字添加其他數字(如01或001)來做到這一點。
我該怎麼做?
我希望mongodb可以將數字排序存儲爲字符串:( – 2016-09-17 17:08:18