Anteriormente hablamos sobre la creación de bases de datos en SQL y como realizar algunas consultas y gestiones básicas en estas, hoy echaremos un vistazo a mongo DB, que aunque sus sentencias son diferentes tienen ciertos elementos similares, en el en Mongo DB no tenemos tablas como en SQL, si no colecciones, que se podría decir que en cierta forma son su equivalente, estas colecciones están contenidas dentro de una base de datos y dentro de cada colección se almacenan los datos.
Creación de una Base de Datos
En Mongo DB la creación de bases de datos es algo diferente a la de SQL, para crear una base de datos simplemente tendríamos que usar la sentancia USE y el nombre de la base de datos que queramos crear, esta base de datos será creada en el momento en el que insertemos un dato en su interior, para insertar los datos utilizaremos las sentencias db.NombreDeLaColección.save(Parámentros), por ejemplo, si quisieramos crear una base de datos llamada empleados que almacenara los nombres, apellidos y edad de los empleados utilizaríamos la siguientes sentencias:
USE empleados
db.emp.save({nombre:"Antonio", apellido:"Inventadez", edad:25})
db.emp.save({nombre:"Antonio", apellido:"Inventadez", edad:25})
Además de la sentencia save también se podría utilizar la sentencia insert para crear la base de datos o insertar elementos en la Colección, por ejemplo:
USE empleados
db.emp.insert({nombre:"Antonio", apellido:"Inventadez", edad:25})
db.emp.insert({nombre:"Antonio", apellido:"Inventadez", edad:25})
Consultas a la Base de Datos
Para realizar consultas dentro de una base de datos utilizaríamos la sentencia find seguida de los parámetros de búsqueda. por ejemplo, si quisiéramos ver los empleados cuyo nombre sea potato utilizaríamos la siguiente sentencia:
db.emp.find({nombre:"potato"})
Si quisiéramos ajustar el orden en que se muestran los resultados de la sentencia find, después de esta añadiríamos la sentencia sort, indicando en el interior en campo que queremos que se use como referencia para el orden acompañado de 1 para orden ascedente o -1 en orden descendente, por ejemplo, si quisiéramos que la pasada consulta saliera ordenada en orden descendente en función del nombre utilizaríamos:
db.enp.find({nombre:"potato"}).sort({nombre:-1})
En caso de que al realizar una consulta find quisiéramos ocultar algún campo de la colección añadiríamos después de la sentencia find los campos que queramos ocultar seguidos de un 0, por ejemplo, si quisiéramos que se nos mostraran los empleados que se llaman pepito y que se oculte la edad utilizaremos la siguiente sentencia:
db.emp.find({nombre:"pepito"},{edad:0})
Si quisiéramos realizar un recuento de elementos arrojados por una sentencia find añadiríamos la sentencia count después de la sentencia find, por ejemplo, si quisiéramos saber cuantos empleados tienen 25 años haríamos lo siguiente:
db.emp.find({edad:25}).count
Operadores de Comparación:
En caso de que quisiéramos realizar alguna consulta con comparaciones tendríamos a nuestra disposición los siguientes parámetros:
$gt: Mayor que
#Queremos que se muestren los empleados cuya edad sea mayor que 20
db.emp.find({edad:{$gt:20}})
$gte: Mayor o igual que
#Queremos que se nos muestren los empleados con una edad igual o mayor que 20
$lt: menor que
#Queremos que se nos muestre los empleados con una edad menor de 30
db.emp.find({edad:{$lt:30}})
$lte: menor o igual
#Queremos que se nos muestre los empleados con una edad menor o igual que 30
db.emp.find({edad:{$lte:30}})
$ne: distinto del valor indicado
#queremos que se nos muestren todos los empleados con edad diferente de 20 años
db.emp.find({edad:{$ne:20}})
$in: los resultados estarían en una lista de valores.
#queremos ver todos los empleados cuya edad es 10 o 20 años:
db.emp.find({edad:{$in:[10,20]}})
$nin: queremos que no se vean los resultados que estén entre una lista de valores
#Queremos ver los empleados que no tengan 10 o 20 años
db.emp.find({edad:{$in:[10.20]}})
0 Comentarios