domingo, 25 de agosto de 2013

Como eliminar un elemento de un Array en MongoDB con JavaScript

Hoy os voy a explicar la forma de como eliminar un elemento de un Array en MongoDB con JavaScript, el proceso es bastante sencillo y para ello vamos a usar la función splice de javascript para eliminar dicho elemento.
Supongamos que tenemos el siguiente array ['aa','bb','cc','dd','ee','ff'], podemos insertarlo en una colección de la siguiente forma:
db.coll.insert({array:['aa','bb','cc','dd','ee','ff']})
Insertar array por HispaBigData







Lo siguiente va a ser almacenar dicho array en una variable llamada data.
var data = db.coll.findOne()
Almacenar Array en Variable por HispaBigData









Ahora con la en la variable index vamos a almacenar el indice del elemento que deseamos eliminar, para ello usaremos la función indexOf, por ejemplo vamos a eliminar el elemento 'dd', como podéis ver abajo el indice de este elemento es el Nº 3 (recordad que los arrays en JavaScripts y en la mayoría de lenguajes de programación el primer elemento es el 0).
var data = db.coll.findOne()
Almacenar indice de un elemento de un array por HispaBigData







Con la funcion Splice vamos a eliminar el elemento que deseamos, esta función le vamos a pasar dos parámetros  el primero es el indice del elemento que deseamos encontrar en el array y el segundo es el número de elementos que vamos a eliminar, en este caso como nos interesa eliminar solo 1.
 data.array.splice(index,1)
Eliminar elemento de un array con Splice por HispaBigData










Ya tenemos nuestra variable array data con los elementos que deseamos, por lo que vamos a guardar dichos datos en nuestro documento, para ello haremos lo siguiente:
db.coll.save(data)
Salvando los cambios en el documento por HispaBigData








Como ya hemos comentado en otras ocasiones la consola de MongoDB interpreta JavaScript, por lo que podemos realizar cualquier operación que se nos ocurra usando funciones JavaScripts.

No hay comentarios:

Publicar un comentario