MongoDB $ rand

MongoDB $ rand
MongoDB é tão vasto quando se trata do uso de operadores como operadores de comparação, operadores lógicos e operadores de uso geral. O operador MongoDB $ rand é usado para retornar um valor aleatório de um intervalo especificado, como sugere o título "Rand". A palavra 'aleatória' é utilizada para qualquer coisa escolhida por acaso, sem decisão ou prioridade adequada. O operador "RAND" do MongoDB pode ser usado em conjunto com outros operadores em uma consulta para selecionar e modificar aleatoriamente registros de uma coleção específica. Um uso do operador $ rand é recuperar registros aleatórios. O operador $ rand fornece uma maneira útil de introduzir aleatoriedade em consultas do MongoDB e pode ser usada de várias maneiras para alcançar objetivos. Neste guia, estaremos elaborando o uso do operador "RAND" para gerar registros de campo aleatórios no banco de dados.

Criar coleção no banco de dados

Comece com a criação de uma nova coleção em seu MongoDB, se você não tiver um. A coleção é essencial para executar qualquer operação nos registros do banco de dados no MongoDBB. Além disso, a coleção deve ter pelo menos 1 documento já inserido antes de aplicar qualquer comando. Portanto, já criamos uma coleção em nosso banco de dados MongoDB. Chamamos isso de "manequim" em nosso banco de dados "teste" que usaremos nas consultas.

Teste> Mostrar coleções

Fictício

Ao trabalhar com o MongoDB, você deve ter registros para utilizar o operador "rand". O comando listado abaixo foi utilizado com o “dB.Fictício.função find () ”que é usado para recuperar todos os documentos de uma coleção“ manequim ”. Este comando retorna todos os documentos da coleção, incluindo seu campo único "_id", bem como outros campos como "City", "Count" e "Desc". Isso permite ao usuário visualizar os dados armazenados na coleção e tomar decisões sobre como trabalhar com ele.

Teste> dB.Fictício.encontrar()
[_id: objectId ("63C8A1F94FF07039AA6CDF6B"), Cidade: 'Texas', Conde: 3, Desc: 'City de tamanho médio',
_id: objectId ("63C8A1F94FF07039AA6CDF6C"), Cidade: 'Los Angeles', Conde: 3, Desc: 'City de tamanho médio',
_id: objectId ("63C8A1F94FF07039AA6CDF6D"), Cidade: 'Itália', Conde: 10, Desc: 'mais bonita e lotada',
_id: objectId ("63C8A1F94FF07039AA6CDF6E"), Cidade: 'Istambul', Conde: 3, Desc: 'Cidade de médio porte',
_id: objectId ("63C8A1F94FF07039AA6CDF6F"), Cidade: 'Delhi', Conde: 3, Desc: 'City de tamanho médio']

Exemplo # 01: $ RAND Operador

Vamos começar com o uso do comando MongoDB que está usando o método agregate () em uma coleção chamada "Dummy" no banco de dados "teste". O método agregate () é usado para processar dados de coleções e devolver resultados computados. O comando está usando o operador de projeto $, que é usado para reformular os documentos no pipeline. E cria um novo campo chamado "aleatório" que é atribuído o resultado do operador $ rand.

O operador $ rand gera um número aleatório entre 0 e 1 (inclusive) para cada registro na coleção. O a seguir o operador $ rand indica que nenhum argumento está sendo passado para o operador, para que gerará um número aleatório sem restrições específicas. A saída é uma matriz JSON de documentos na coleção "fictício", cada um dos quais contém um campo "_id" e um campo "aleatório". O campo "aleatório" contém um número aleatório entre 0 e 1 ou valores do tipo flutuante que foram gerados pelo operador $ rand para todos os 5 registros também mostrados na saída abaixo:

Teste> dB.Fictício.agregado ([$ Project: Random: $ rand: ])
[_id: objectId ("63c8a1f94ff07039aa6cdf6b"), aleatório: 0.292593749216963,
_id: objectId ("63C8A1F94FF07039AA6CDF6C"), Random: 0.5529488318506414,
_id: objectId ("63C8A1F94FF07039AA6CDF6D"), Random: 0.10835699304362681,
_id: objectId ("63C8A1F94FF07039AA6CDF6E"), Random: 0.702304030840275,
_id: objectId ("63C8A1F94FF07039AA6CDF6F"), Random: 0.32829452437455164]

Exemplo # 02: Usando o operador $ rand com $ multiplicar operador

O primeiro exemplo ilustra o uso do operador "rand" em MongoDB apenas em uma coleção. Agora, estaremos utilizando -o em conjunto com o operador multiplique. Temos usado a consulta abaixo para esse fim. Começa com o uso da função agregada com o estágio $ do projeto e o operador aleatório novamente. Desta vez, o operador multiplique foi aplicado a um operador "$ rand" ou o valor que temos do operador "RAND" é multiplicado por 10 para gerar um número aleatório entre 0 e 10 para cada documento. A saída abaixo mostra uma matriz de todos os documentos da coleção "manequim", cada um com seu identificador exclusivo e um novo campo chamado Random, que manterá os números aleatórios gerados entre 0 e 10 i.e., flutuador.

Teste> dB.Fictício.agregado ([$ Project: Random: $ multiply: [$ rand: , 10]])
[_id: objectId ("63C8A1F94FF07039AA6CDF6B"), Random: 9.636797271617377,
_id: objectId ("63C8A1F94FF07039AA6CDF6C"), Random: 9.612768242636559,
_id: objectId ("63C8A1F94FF07039AA6CDF6D"), Random: 9.773269856209643,
_id: objectId ("63C8A1F94FF07039AA6CDF6E"), R Andom: 4.544313454814634,
_id: objectId ("63C8A1F94FF07039AA6CDF6F"), Random: 3.3338556824055585]

Exemplo # 03: $ RAND Operador com “$ Operador de piso

O último comando ilustra o uso do operador "rand" com o operador "multiplicar" para gerar números aleatórios do tipo flutuante. Desta vez, elaboraremos como gerar números do tipo inteiro usando o operador "RAND" em conjunto com o operador "piso" do MongoDBB. Portanto, a instrução abaixo foi executada no shell do MongoDB para produzir os valores aleatórios inteiros para cada registro na coleção "manequim". Desta vez, o operador aleatório é multiplicado por 10 para gerar um número aleatório entre 0 e 10 para cada documento. Depois disso, o operador do piso é aplicado para arredondar o número aleatório para o número inteiro mais próximo.

A saída é uma matriz de todos os documentos da coleção, cada um com seu próprio objeto exclusivo, a propriedade da cidade e uma nova propriedade chamada Random, que manterá o número inteiro aleatório gerado entre 0 e 10, conforme demonstrado a partir da saída da instrução também.

Teste> dB.Fictício.agregado ([$ Project: City: 1, Random: $ piso: $ multiply: [$ rand: , 10]])
[_id: objectId ("63C8A1F94FF07039AA6CDF6B"), Cidade: 'Texas', Random: 5,
_id: objectId ("63C8A1F94FF07039AA6CDF6C"), Cidade: 'Los Angeles', Random: 0,
_id: objectId ("63C8A1F94FF07039AA6CDF6D"), Cidade: 'Itália', Random: 5,
_id: objectId ("63C8A1F94FF07039AA6CDF6E"), Cidade: 'Istambul', Random: 7,
_id: objectId ("63C8A1F94FF07039AA6CDF6F"), Cidade: 'Delhi', Random: 5]

Exemplo # 04: $ RAND Operador com $ Operador de piso

Nas ilustrações acima, multiplicamos valores gerados aleatoriamente com 10 ou nada para deixá-los em sua forma do tipo flutuante ou para convertê-los em um valor inteiro. Mas, neste exemplo, multiplicaremos nossos valores de flutuação gerados aleatoriamente com uma figura um pouco maior, que é 5000. Da mesma maneira, o comando usado nos exemplos acima foi utilizado aqui com uma ligeira mudança. O operador “multiplicar” multiplica o número aleatório gerado pelo operador $ rand por 5000 para aumentar o alcance do número aleatório. O operador "piso" redonda o número gerado pelo operador $ multiplicar para o número inteiro mais próximo. A saída desta instrução abaixo mostra 5 registros na tela do MongoDODB com uma nova propriedade que contém um número inteiro aleatório entre 0 e 5000 da seguinte forma:

Teste> dB.Fictício.agregado ([$ Project: City: 1, Random: $ piso: $ multiply: [$ rand: , 5000]])
[_id: objectId ("63C8A1F94FF07039AA6CDF6B"), Cidade: 'Texas', Random: 2862,
_id: objectId ("63C8A1F94FF07039AA6CDF6C"), Cidade: 'Los Angeles', Random: 3688,
_id: objectId ("63C8A1F94FF07039AA6CDF6D"), Cidade: 'Itália', Random: 814,
_id: objectId ("63C8A1F94FF07039AA6CDF6E"), Cidade: 'Istambul', Random: 3888,
_id: objectId ("63C8A1F94FF07039AA6CDF6F"), Cidade: 'Delhi', Random: 2939]

Conclusão

Discutimos a definição do operador "aleatório" em MongoDB. Além disso, discutimos seus usos na linha de comando do MongoDB. Em seguida, tentamos 4 dos diferentes exemplos para demonstrar seu uso junto com outros operadores. Os comandos acima demonstram como usar a função agregada do MongoDB e vários operadores como $ rand, $ multiply e $ piso para manipular dados em uma coleção e gerar novas propriedades com números aleatórios.