En bases de datos, hay escenarios en los que debe actualizar el nombre de un campo en un documento existente sin recrear el documento completo.
En esta publicación, discutiremos cómo usar el operador $ renombrado para establecer un nuevo nombre para un campo existente.
Vamos a saltar.
Sintaxis del operador
Lo siguiente muestra la sintaxis del operador $ renombrado en MongoDB:
$ renombrar:: , :
El operador toma un campo existente y asigna un nuevo nombre especificado.
El nombre de destino debe diferir del nombre de origen. Puede usar la notación de puntos para cambiar el nombre de un campo en un documento integrado o una matriz.
Veamos un ejemplo práctico simple para comprender mejor cómo funciona el operador $ renombrado.
Ejemplo práctico
Comencemos creando una colección de muestras y agregue documentos de muestra como se muestra en la siguiente consulta:
db.CreateCollection ("Productos")
Agregar documentos de muestra:
db.productos.InsertMany ([_id: 1, Product_Name: "Product_1", Price: 100, Qty: 78, _id: 2, Product_Name: "Product_2", Precio: 4500, Qty: 344, _id: 3, Product_Name: "Product_3", Precio: 45, Cantidad: 200]);
Ahora que tenemos datos de prueba, podemos continuar y discutir cómo cambiar el nombre de un campo.
Ejemplo 1: cambiar el nombre de un campo usando el operador $ renombrado
El siguiente ejemplo muestra cómo usar el operador $ renombrado para actualizar el nombre del campo "Cantidad" a "Cantidad".
db.productos.UpdateMany (, $ renombre: "Qty": "Cantidad")
El comando debe devolver el estado de reconocimiento y el número de documentos actualizados.
Reconocido: verdadero,
Insertedid: NULL,
MatchedCount: 3,
ModifiedCount: 3,
UpsertedCount: 0
Podemos verificar los documentos para verificar que el nombre del campo especificado se haya actualizado.
Prueba> DB.productos.encontrar().bonito()
Documentos de salida:
[
_id: 1, Product_Name: 'Product_1', Precio: 400, Cantidad: 7800,
_id: 2, Product_Name: 'Product_2', Precio: 4500, Cantidad: 344,
_id: 3, Product_Name: 'Product_3', Precio: 45, Cantidad: 200
]
Ejemplo 2: cambiar el nombre de un campo inexistente
Si usamos el operador $ renombrado para cambiar el nombre de un campo existente, el operador no hace nada y existe sin un error.
Un ejemplo es como se muestra en el siguiente:
db.estudiantes.UpdateMany (_id: 1, $ rename: 'esposa': 'cónyuge')
El comando anterior simplemente se completa sin realizar ninguna acción.
Conclusión
En esta publicación, exploramos cómo cambiar el nombre de un campo existente en un documento MongoDB usando el operador $ renombrado.
Gracias por leer!