Saltar al contenido

Ejercicio 7: MongoDB – Importar y Consultar datos de Países (paso a paso)


En esta entrada vamos a realizar un ejercicio práctico con MongoDB, donde aprenderemos a importar un fichero .json y a ejecutar algunas consultas básicas. Este ejemplo se basa en un archivo llamado paises.json que contiene información sobre varios países como población, idioma, superficie, línea de costa, etc.

📁 Paso 1: Preparar el entorno

  1. Asegúrate de tener MongoDB instalado en tu equipo.
  2. Guarda el archivo paises.json en una carpeta fácilmente accesible, por ejemplo: ~/Documentos/mongodb/.

📥 Paso 2: Importar el archivo JSON a MongoDB

Abre la terminal o línea de comandos y navega a la carpeta donde tienes el archivo. Usa el siguiente comando para importar los datos en una base de datos llamada geografia y en una colección llamada paises:

mongoimport --db geografia --collection paises --file paises.json --jsonArray

Este comando insertará los datos de forma masiva. Asegúrate de que el fichero está bien formateado como un array JSON (como el que hemos usado).

🔍 Paso 3: Verificar que los datos se han importado

Accede al shell de MongoDB:

mongosh

Luego selecciona la base de datos:

use geografia

Y visualiza todos los documentos importados:

db.paises.find().pretty()

📊 Paso 4: Consultas básicas

4.1. Mostrar solo los nombres de los países

db.paises.find({}, {nombre: 1, _id: 0})

4.2. Mostrar los países con más de 50 millones de habitantes

db.paises.find({num_habitantes: {$gt: 50000000}})

4.3. Mostrar el idioma oficial de Italia

db.paises.find({nombre: "Italia"}, {idioma_oficial: 1, _id: 0})

4.4. Mostrar todos los países ordenados por superficie descendente

db.paises.find().sort({superficie: -1})

4.5. Mostrar los países cuya línea de costa supera los 7500 km

db.paises.find({km_linea_costa: {$gt: 7500}})

✅ Conclusión

Este ejercicio es ideal para comenzar a trabajar con datos reales en MongoDB. Aprendimos cómo importar archivos JSON y ejecutar consultas básicas que nos permiten analizar la información de manera flexible y potente. Puedes ampliar este ejemplo con más campos o más países en el futuro.

Etiquetas:

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Información básica sobre protección de datos Ver más

  • Responsable: Tomas Gonzalez.
  • Finalidad:  Moderar los comentarios.
  • Legitimación:  Por consentimiento del interesado.
  • Destinatarios y encargados de tratamiento:  No se ceden o comunican datos a terceros para prestar este servicio.
  • Derechos: Acceder, rectificar y suprimir los datos.
  • Información Adicional: Puede consultar la información detallada en la Política de Privacidad.

¿Atascado con tu proyecto? Presupuesto GRATIS

X
error: Content is protected !!
Este sitio web utiliza cookies, si necesitas más información puedes visitar nuestra política de privacidad    Ver
Privacidad