MongoDB es una base de datos de documentos con la escalabilidad y flexibilidad que quieres más las consultas e indices que necesitas.

Cheat Sheet

Crear base de datos
use myDB                                   
Crear colección con datos
db.collection.insert (...)
Obtener todos los datos de una colección
db.collection.find() 
Obtener todos los datos de una colección y mostrarlos versión impresión              
db.collection.find().pretty()   
Obtener un dato de una colección y mostrarlo versión impresión 
db.collection.findOne()   
Remover registro usando un parámetro
db.collection.remove({"Parametro" : "Value"}) 
Actualizar registro usando un parámetro
db.collection.update({"Parametro" : "Value"},$set:{...}) 
Borrar colección
db.collection.drop()                
Obtener registro y columnas específicas usando un parámetro
db.collection.find({"Parametro":"Value"},{"Parametro":1,_id:0}) 
Obtener registro filtrado por valor del documento anidado (hijo)
db.collection.find({'Parametro.Subparametro': "Value"}) 
Obtener subdocumento 
db.collection.find({"Parametro":"Value",'Table.Data.id':"1"},{_id:0,'Table.$':1})

Ejemplos:

  • Crear una base de datos, una colección y consultar la información creada, un id es generado automáticamente para cada documento sino se específica “_id”.
Establecer nueva BD, no se crea hasta tener al menos una colección
use myDB
Crear colección e insertar registro
db.newCollection.insert({"Name":"My Name","Age":123,"Subdocument":[{"Texto":"Valor"},{"Texto2":"Valor2"}]})
Consultar la información insertada
db.newCollection.find()

MongoDBExample1

  • db.xxx.find().pretty() y db.xxx.findOne() muestran la misma información si hay un solo registro, si hay más de un registro findOne trae el primero y find().pretty los trae todos en formato impresión.

MongoDBExample2

  • Para remover documentos podemos utilizar cualquier campo como parámetro:
Insertar nuevo documento (No se requiere que los campos sean
los mismos en todos los documentos de una colección)
db.newCollection.insert({"Name":"Name2","Age":66,"OtroCampo":"campo2"})
db.newCollection.find()
Eliminar documento usando el campo Name
db.newCollection.remove({"Name":"Name2"})
db.newCollection.find()

MongoDBExample3

  • Cuando utilizamos la secuencia update, podemos actualizar el campo de un documento o agregar un campo nuevo.
db.newCollection.update({"Age":{$eq:123}},{$set:{"Name":"My Name update","Nuevo":"New Field"}},{multi:true})

MongoDBExample4

  • Obtener uno o varios campos de un documento específico:
db.newCollection.find({"Name":"My Name update"},{"Age":1,_id:0})

MongoDBExample5

  • Para obtener un documento basado en un subdocumento:
Insertar otro documento con el Subdocument
db.newCollection.insert({"Name":"My Name 2","Subdocument":[{"Texto":"Valor3"},{"Texto2":"Valor4"}]})
Buscar el documento que tiene el Subdocument Texto con valor "Valor3"
db.newCollection.find({"Subdocument.Texto":"Valor3"})

MongoDBExample6

  • Consultar solamente el valor del subdocumento
db.newCollection.find({"Subdocument.Texto":"Valor3"},{_id:0,"Subdocument.$":1})

MongoDBExample7

  • Eliminar colección.
db.newCollection.drop()

MongoDBExample8

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s