Função de classificação do MongoDB

Função de classificação do MongoDB
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.