Actualización: A partir de ahora, mongodb tiene índices que no distinguen entre mayúsculas y minúsculas:
Users.find({})
.collation({locale: "en" })
.sort({name: 1})
.exec()
.then(...)
concha:
db.getCollection('users')
.find({})
.collation({'locale':'en'})
.sort({'firstName':1})
Actualización: Esta respuesta está desactualizada, 3.4 tendrá índices que no distinguen entre mayúsculas y minúsculas. Consulte JIRA para obtener más información https://jira.mongodb.org/browse/SERVER-90
Desafortunadamente, MongoDB aún no tiene índices que no distingan entre mayúsculas y minúsculas:https://jira.mongodb.org/browse/SERVER-90 y la tarea se retrasó.
Esto significa que la única forma de ordenar que no distingue entre mayúsculas y minúsculas actualmente es crear un campo específico "en minúsculas", copiando el valor (en minúsculas, por supuesto) del campo de ordenación en cuestión y ordenándolo en su lugar.