如何按给定字段对 MongoDB 集合进行排序(不区分大小写)?默认情况下,我先得到 A-Z,然后再得到 a-z。
Update:截至目前,mongodb 的索引不区分大小写:
Users.find({})
.collation({locale: "en" })
.sort({name: 1})
.exec()
.then(...)
shell:
db.getCollection('users')
.find({})
.collation({'locale':'en'})
.sort({'firstName':1})
Update:这个答案已经过时了,3.4 将有不区分大小写的索引。查看 JIRA 了解更多信息https://jira.mongodb.org/browse/SERVER-90 https://jira.mongodb.org/browse/SERVER-90
不幸的是 MongoDB 还没有不区分大小写的索引:https://jira.mongodb.org/browse/SERVER-90 https://jira.mongodb.org/browse/SERVER-90并且任务被推迟了。
这意味着当前不区分大小写排序的唯一方法是实际创建一个特定的“小写”字段,复制相关排序字段的值(当然是小写)并对其进行排序。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)