我无法使用 neDB 数据库按字母顺序对数据进行排序
I can not sort the data alphabetically with neDB database
原来我在 electron 中使用 neDB 模块的数据库有问题。我遇到的问题是,如果字段以大写字母开头,它不会按字母顺序对值进行排序。
当我尝试按字母顺序对它们进行排序时,它们完全杂乱无章。我已经在数据库中保存了所有没有大写的名字并且它完美地排序了,这是名字开头大写的问题。
我尝试搜索网络是否有人遇到同样的问题,但似乎没有找到任何人。也许我做错了什么
var db= new Datastore({filename: path.normalize(
app.getPath('userData'))+'/base/people.db',
autoload:true});
db.find({}).sort({'nom' : 1 }).skip(0).limit(15).exec(function (err, docs) {
docs.forEach(function(doc, i, arr){
var divNombre = document.createElement('div');
divNombre.className='nombre';
divFicha.appendChild(divNombre);
var textoNombre = document.createTextNode(doc.nom);
divNombre.appendChild(textoNombre);
});//docs.forEach(function(doc, i, arr)
});
数据库小例子:
{"nom":"tpaggtff","iu":"5r55rr5rf","des":"fffffffffffff"_id":"2899ts0q","ba":"no"}
{"nom":"astohgff","idF":"5t554545","des":"frfrfrcrfrrrf","_id":"3omnamvi","ba":"no"}
{"nom":"Bettgnhitoz","idF":"dededed","des":"ddffff55f","_id":"au0oxhxy","ba":"no"}
执行您的数据的结果是:
[ { nom: 'Bettgnhitoz',
idF: 'dededed',
des: 'ddffff55f',
ba: 'no',
_id: 'cDeLArtZYkVCHI7e' },
{ nom: 'astohgff',
idF: '5t554545',
des: 'frfrfrcrfrrrf',
ba: 'no',
_id: 'oC4CIUmxJ2kqHcMC' },
{ nom: 'tpaggtff',
iu: '5r55rr5rf',
des: 'fffffffffffff',
ba: 'no',
_id: 'CLucpeOhxsnSUua6' } ]
这是准确的,因为大写字母将排在小写字母之前,这是由于 ASCII 字符集中字符的顺序,检查 this。
原来我在 electron 中使用 neDB 模块的数据库有问题。我遇到的问题是,如果字段以大写字母开头,它不会按字母顺序对值进行排序。
当我尝试按字母顺序对它们进行排序时,它们完全杂乱无章。我已经在数据库中保存了所有没有大写的名字并且它完美地排序了,这是名字开头大写的问题。
我尝试搜索网络是否有人遇到同样的问题,但似乎没有找到任何人。也许我做错了什么
var db= new Datastore({filename: path.normalize(
app.getPath('userData'))+'/base/people.db',
autoload:true});
db.find({}).sort({'nom' : 1 }).skip(0).limit(15).exec(function (err, docs) {
docs.forEach(function(doc, i, arr){
var divNombre = document.createElement('div');
divNombre.className='nombre';
divFicha.appendChild(divNombre);
var textoNombre = document.createTextNode(doc.nom);
divNombre.appendChild(textoNombre);
});//docs.forEach(function(doc, i, arr)
});
数据库小例子:
{"nom":"tpaggtff","iu":"5r55rr5rf","des":"fffffffffffff"_id":"2899ts0q","ba":"no"}
{"nom":"astohgff","idF":"5t554545","des":"frfrfrcrfrrrf","_id":"3omnamvi","ba":"no"}
{"nom":"Bettgnhitoz","idF":"dededed","des":"ddffff55f","_id":"au0oxhxy","ba":"no"}
执行您的数据的结果是:
[ { nom: 'Bettgnhitoz',
idF: 'dededed',
des: 'ddffff55f',
ba: 'no',
_id: 'cDeLArtZYkVCHI7e' },
{ nom: 'astohgff',
idF: '5t554545',
des: 'frfrfrcrfrrrf',
ba: 'no',
_id: 'oC4CIUmxJ2kqHcMC' },
{ nom: 'tpaggtff',
iu: '5r55rr5rf',
des: 'fffffffffffff',
ba: 'no',
_id: 'CLucpeOhxsnSUua6' } ]
这是准确的,因为大写字母将排在小写字母之前,这是由于 ASCII 字符集中字符的顺序,检查 this。