MongoDB: Ordenar por campo existente y luego alfabéticamente
En mi base de datos tengo un campo dename
. En algunos registros es una cadena vacía, en otros tiene un nombre.
En mi consulta, actualmente estoy haciendo:
db.users.find({}).sort({'name': 1})
Sin embargo, esto devuelve resultados con un campo de nombre vacío primero, luego alfabéticamente devuelve resultados. Como se esperaba, haciendo.sort({'name': -1})
devuelve resultados con un nombre y luego resultados con una cadena vacía, pero está en orden alfabético inverso.
¿Hay alguna forma elegante de lograr este tipo de clasificación?