Neste tutorial, exploraremos como usar a função de classificação do MongoDB. Esta função nos permite definir a ordem em que o cursor do MongoDB retorna documentos correspondentes.
A sintaxe da função é como mostrado:
dB.Coleção.classificar (Field: Value)
A função aceita o documento que contém um campo específico e a ordem de classificação. O valor de 1 mostra uma ordem ascendente enquanto -1 indica uma ordem de classificação descendente.
A função retornará os documentos consultados classificados na ordem especificada, conforme definido no campo e parâmetros de valor.
Exemplo
Comece criando uma coleção e adicionando alguns documentos de amostra.
A consulta é como mostrado:
dB.createCollection ("filmes")
dB.filmes.InsertMany (
[[
"show_id": "s1",
"Tipo": "filme",
"Título": "Dick Johnson está morto",
"Diretor": "Kirsten Johnson",
"Elenco": nulo,
"país": "Estados Unidos",
"date_added": "25 de setembro de 2021",
"Release_year": número (2020),
"Classificação": "PG-13",
"Duração": "90 min",
"Listed_in": "Documentários"
,
"show_id": "s2",
"Tipo": "programa de TV",
"Title": "Blood & Water",
"Diretor": NULL,
"Elenco": nulo,
"país": "África do Sul",
"date_added": "24 de setembro de 2021",
"Release_year": número (2021),
"Classificação": "tv-ma",
"Duração": "2 temporadas",
"Listed_in": "Programas de TV internacionais, dramas de TV, Mistérios da TV",
,
"show_id": "s3",
"Tipo": "programa de TV",
"Title": "Ganglands",
"Diretor": "Julien Leclercq",
"Elenco": nulo,
"Country": NULL,
"date_added": "24 de setembro de 2021",
"Release_year": número (2021),
"Classificação": "tv-ma",
"Duração": "1 temporada",
"Listed_in": "Crime TV programas, programas de TV internacionais, ação de TV e aventura",
,
"show_id": "s4",
"Tipo": "programa de TV",
"Título": "Jailbirds Nova Orleans",
"Diretor": NULL,
"Elenco": nulo,
"Country": NULL,
"date_added": "24 de setembro de 2021",
"Release_year": número (2021),
"Classificação": "tv-ma",
"Duração": "1 temporada",
"Listed_in": "Docuseries, Reality TV",
,
"show_id": "s5",
"Tipo": "programa de TV",
"Title": "Kota Factory",
"Diretor": NULL,
"Elenco": nulo,
"país": "Índia",
"date_added": "24 de setembro de 2021",
"Release_year": número (2021),
"Classificação": "tv-ma",
"Duração": "2 temporadas",
"Listed_in": "programas de TV internacionais, programas de TV românticos, comédias de TV",
]
)
A partir dos documentos acima, podemos usar a função de classificação para classificar os documentos com base na classificação em ordem crescente.
A consulta é como mostrado:
dB.filmes.encontrar().Sort ("Classificação": 1)
Executar a consulta acima classificará os documentos em ordem alfabética com base no campo de classificação. É bom ter em mente que, como a coleção contém valores duplicados para as classificações, a ordem de classificação pode ser inconsistente em várias execuções.
Também podemos classificar os documentos em ordem descendente definindo o valor de classificação como -1. Um exemplo é como mostrado:
dB.filmes.encontrar().Sort ("release_year": -1)
A consulta acima deve retornar os documentos classificados em ordem decrescente com base no campo Release_year.
A saída resultante é como mostrado:
"_id": objectId ("632AF6B69C8D85D13EB419A4"),
"show_id": "s2",
"Tipo": "programa de TV",
"Title": "Blood & Water",
"Diretor": NULL,
"Elenco": nulo,
"país": "África do Sul",
"date_added": "24 de setembro de 2021",
"Release_year": número (2021),
"Classificação": "tv-ma",
"Duração": "2 temporadas",
"Listed_in": "Programas de TV internacionais, dramas de TV, Mistérios da TV"
"_id": objectId ("632AF6B69C8D85D13EB419A5"),
"show_id": "s3",
"Tipo": "programa de TV",
"Title": "Ganglands",
"Diretor": "Julien Leclercq",
"Elenco": nulo,
"Country": NULL,
"date_added": "24 de setembro de 2021",
"Release_year": número (2021),
"Classificação": "tv-ma",
"Duração": "1 temporada",
"Listed_in": "Crime TV programas, programas de TV internacionais, ação de TV e aventura"
"_id": objectId ("632AF6B69C8D85D13EB419A6"),
"show_id": "s4",
"Tipo": "programa de TV",
"Título": "Jailbirds Nova Orleans",
"Diretor": NULL,
"Elenco": nulo,
"Country": NULL,
"date_added": "24 de setembro de 2021",
"Release_year": número (2021),
"Classificação": "tv-ma",
"Duração": "1 temporada",
"Listed_in": "Docuseries, Reality TV"
"_id": objectId ("632AF6B69C8D85D13EB419A7"),
"show_id": "s5",
"Tipo": "programa de TV",
"Title": "Kota Factory",
"Diretor": NULL,
"Elenco": nulo,
"país": "Índia",
"date_added": "24 de setembro de 2021",
"Release_year": número (2021),
"Classificação": "tv-ma",
"Duração": "2 temporadas",
"Listed_in": "programas de TV internacionais, programas de TV românticos, comédias de TV"
"_id": objectId ("632AF6B69C8D85D13EB419A3"),
"show_id": "s1",
"Tipo": "filme",
"Título": "Dick Johnson está morto",
"Diretor": "Kirsten Johnson",
"Elenco": nulo,
"país": "Estados Unidos",
"date_added": "25 de setembro de 2021",
"Release_year": número (2020),
"Classificação": "PG-13",
"Duração": "90 min",
"Listed_in": "Documentários"
Conclusão
Neste artigo, discutimos como usar o cursor.Método Sort () em MongoDB. Podemos usar a função Sort () para classificar os resultados de uma consulta em ordem ascendente ou descendente.