MongoDB Renomear campo

MongoDB Renomear campo

Nos bancos de dados, há cenários em que você precisa atualizar o nome de um campo em um documento existente sem recriar todo o documento.

Neste post, discutiremos como usar o operador de renomear $ para definir um novo nome para um campo existente.

Vamos pular.

Sintaxe do operador

A seguir, mostra a sintaxe do operador $ renomeado em MongoDB:

$ renomear: : , :

O operador pega um campo existente e atribui um novo nome especificado.

O nome de destino deve diferir do nome da fonte. Você pode usar a notação de pontos para renomear um campo em um documento incorporado ou uma matriz.

Vejamos um exemplo prático simples para entender melhor como o operador de renomeio $ funciona.

Exemplo prático

Vamos começar criando uma coleção de amostras e adicione documentos de amostra, como mostrado na consulta a seguir:

dB.CreateCollection ("Produtos")

Adicione documentos de amostra:

dB.produtos.insertMany ([_id: 1, product_name: "product_1", preço: 100, qty: 78, _id: 2, product_name: "product_2", preço: 4500, qty: 344, _id: 3, product_name: "Product_3", Preço: 45, Qty: 200]);

Agora que temos dados de teste, podemos prosseguir e discutir como renomear um campo.

Exemplo 1: renomeie um campo usando o operador $ renomear

O exemplo a seguir mostra como usar o operador $ renomear para atualizar o nome do campo "Qty" para "quantidade".

dB.produtos.updatemany (, $ renome: "qty": "quantity")

O comando deve retornar o status de reconhecimento e o número de documentos atualizados.


reconhecido: verdadeiro,
inserdId: nulo,
MatchedCount: 3,
ModifiedCount: 3,
UPSERTEDCOUNT: 0

Podemos verificar os documentos para verificar se o nome do campo especificado foi atualizado.

Teste> dB.produtos.encontrar().bonito()

Documentos de saída:

[[
_id: 1, Product_name: 'Product_1', Preço: 400, Quantidade: 7800,
_id: 2, product_name: 'product_2', preço: 4500, quantidade: 344,
_id: 3, product_name: 'product_3', preço: 45, quantidade: 200
]

Exemplo 2: renomeie um campo inexistente

Se usarmos o operador $ renomear para renomear um campo existente, o operador não faz nada e existe sem um erro.

Um exemplo é como mostrado no seguinte:

dB.alunos.updatemany (_id: 1, $ renome: 'wife': 'spouse')

O comando anterior está simplesmente concluído sem executar nenhuma ação.

Conclusão

Neste post, exploramos como renomear um campo existente em um documento MongoDB usando o operador $ renomear.

Obrigado pela leitura!