• Saltar a la navegación principal
  • Saltar al contenido principal
  • Saltar al pie de página
logo web Geoinnova

Geoinnova

Consultoría y Formación en SIG y Medio Ambiente

  • Geoinnova
    • Asociación
    • Equipo
    • Visor de proyectos Geoinnova
    • Geolibrería
    • Alianzas Estratégicas
  • Consultoría
    • Consultoría y Desarrollo en Sistemas de Información Geográfica
    • Consultora Ambiental
    • Turismo sostenible
    • Planificación urbana y ordenación del territorio
    • Planes Urbanos de Actuación Municipal – PUAM
    • Geomarketing
  • Servicios
    • Planero Web
    • QElectricGIS
    • Plugins
  • Formación
    • Todos los cursos
    • Webinars
    • Máster y Diplomas
    • Cursos de ArcGIS
    • Cursos de QGIS
    • Cursos de Teledetección
    • Cursos de Medioambiente
  • Medio Ambiente
    • Consultora Ambiental
    • Estudios ambientales para proyectos de energías renovables
    • Estudios de Impacto e Integración Paisajística
    • Evaluación Ambiental Estratégica de planes y programas
    • Estudio de Impacto Ambiental para proyectos
    • Cálculo huella de carbono
    • Educación Ambiental
    • Cursos de Medioambiente
  • Coworking
  • Blog
    • SIG
    • Medio Ambiente
    • Teledetección
    • Programación y Desarrollo SIG
    • Corporativo
  • Contacto
    • Soporte de Clientes – Tickets
SIG

Relaciones entre tablas con QGIS

03/03/2017 3 comentarios

Aprende a hacer relaciones entre tablas con QGIS

Es probable que hayamos tenido la necesidad de hacer relaciones de tablas en QGIS tras obtener una serie de datos. Incluso puede que lo hayamos necesitado sin saber muy bien qué es una unión de tablas.

Para entender lo que es una unión de tablas vamos a ver dos de los tres tipos de relaciones, y cómo resolverlas con QGIS:

Relación 1:1

Este tipo de uniones son las más sencillas, y podemos encontrarlas, por ejemplo, al descargar una serie de datos estadísticos. 

Supongamos que partimos de un Shapefile de ciudades, y de dos tablas, una con los nombres y otra con el número de habitantes.

Tabla de la capa de Ciudades
Tabla población de ciudades.
tabla nombres de ciudad.

Como ya sabremos, para unirlas solo debemos ir a la capa de la geometría, y en la pestaña de uniones, seleccionaremos ambos campos como en la imagen.

relaciones entre tablas con qgis
Unir dos tablas simples.

Repetimos lo mismo con la segunda tabla, y el resultado es una sola tabla con todos los campos.

resultado de la unión con campos de todas las tablas.

Relaciones 1:M

Pero, ¿qué ocurre sin vez de un valor por cada municipio tenemos varios?

Este caso es puede dar, por ejemplo, con una tabla de traducciones de las ciudades.

En este caso, en vez de el campo ID y el valor, tendremos el campo ID, el campo Idioma, y el campo valor. Así, para una ciudad ahora tenemos 4 valores.

Tabla traducciones de ciudades.

Para resolver esta relación lo haremos de distinta manera:

Iremos a proyecto y propiedades, y a la pestaña de relaciones, y rellenaremos los campos como en la imagen. Como hemos hecho antes, seleccionaremos ambas capas y el campo común.

relaciones entre tablas con qgis
Establecer relaciones QGIS

Una vez hecho esto, si abrimos la tabla de valores de la capa de ciudades, y lo ponemos en modo formulario, veremos cómo si vamos cambiando de ciudad, aparecerán los distintos valores para cada idioma.

Resultado relación 1:M

Esto es lo que en informática se llama una relación uno a muchos, o 1:M

Relaciones M:N

Por último, lo podemos complicar un poco más.

Supongamos que tenemos una empresa de ventas, en la que una ciudad puede tener muchos comerciales asignados, y un comercial a su vez, muchas ciudades. Por tanto, tenemos tres tablas:

Empleados, Ciudades (ya la teníamos) y una tabla de unión, que une los comerciales con su zona.

Tabla empleados
Tabla comercial_zona

Esto es lo que se llama una relación muchos a muchos, o M:N. En QGIS una manera de resolver esto será la unión de ambas tablas de la misma manera que lo hemos hecho antes.

Así, nos iremos a las uniones en las propiedades del proyecto y lo dejaremos de la siguiente manera:

Ahora podremos ver los datos desde ambas tablas.

Resultado relación M:N

Desde ciudades, que veremos los comerciales que tiene asignados cada una.

Y desde empleados, que veremos qué ciudad tiene asignado

Resultado relación M:N

Tenemos que recordar que todas estas relaciones se guardan a nivel de proyecto, pero no las estamos guardando en nuestros datos.

Conclusión:

Con estos tres ejemplos se pretende explicar cómo trata QGIS las relaciones entre tablas, ya sean la 1:1, la 1:M, o la M:N. El uso de estas relaciones es muy común al trabajar con cualquier base de datos, pero no tan común en muchos usuarios de GIS no avanzados.

No te pierdas nuestro próximo curso de QGIS en el cual trabajaras herramientas tan interesates como esta que acabas de ver. ¡Anímate!

 

Etiquetas: qgis

Apúntate a nuestra newsletter semanal

"*" señala los campos obligatorios

Consentimiento*
*
Este campo es un campo de validación y debe quedar sin cambios.

Información legal

Cumplimos el RGPD (Reglamenteo General de Protección de Datos) y esta en la primera información que debes saber. Responsable: Asociación Geoinnova. Finalidad: Apuntarte en nuestra base de datos para poder enviarte nuestra newsletter y cualquier otra información de interes. Legitimidad: Nos das tu consentimiento para comunicarnos contigo. Derechos: Tienes derecho a acceder, rectificar, limitar y suprimir tus datos. Para una información más ampliada entra a nuestra política de privacidad.

Artículos relacionados

Cómo instalar y agregar nuevas fuentes en QGIS
29/11/2022
Extraer valores ráster en QGIS
27/10/2022
Cómo instalar librerías python en PyQGIS
06/10/2022

Pablo Pardo

Consultor y programador GIS con años de experiencia tanto como consultor autónomo como por cuenta ajena. ha participado en numerosos proyectos GIS en todas sus fases, desde la explotación de sistemas propios hasta el análisis y la creación de sistemas específicos para resolver problemas espaciales

Interacciones con los lectores

Comentarios

  1. Juan Pozo dice

    30/07/2020 a las 17:02

    Buenos días, tengo problemas para graficar las tablas con atributos relacionados en el mapa. SALUDOS

    Responder
  2. juan diego dice

    11/04/2017 a las 20:39

    esta muy bueno, una pregunta sobre esto:
    como puedo usar esta relacion 1:n para luego seleccionar los datos relacionados, y por ejemplo guardarlos como una nueva capa?

    Responder
    • Pablo Pardo dice

      12/04/2017 a las 07:12

      Hola Juan Diego.
      Pues no sé si te he entendido bien, pero ahora mismo la única manera que se me ocurre es que, una vez hecha la relación, pinches en información del elemento que quieras, y en modo tabla, copiar todos los elementos relacionados.
      Otra manera podría ser mediante la tabla virtual, haciendo una select a esa tabla. De esto voy a escribir algo en breve.
      Un saludo.

      Responder

¿Quieres comentarnos algo? Adelante! Cancelar la respuesta

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

Footer

Menú Legal

  • Aviso Legal
  • Política de privacidad
  • Política de cookies
  • Términos y condiciones

Otras páginas de interes

  • Promociones y descuentos en formación
  • Formación bonificada FUNDAE

Contacto

Calle Luis Morondo Urra nº 8 Bajo A
31006 Pamplona (Navarra)
info@geoinnova.org
+34 948 117 137

Horario de atención

Lunes a Viernes - 09:00 a 14:00 y de 16:00 a 19:00.
Fines de semana y Festivos - Exclusivamente por mail.
Horario de Verano (01 de julio al 30 de agosto): De lunes a viernes de 8 a 15h.
Entidad adherida a Confianza Online Certificado de inscripción en el Registro de huella de carbono, compensación y proyectos de absorción Logo Plazox

© 2023 · Desarrollada por Geoinnova en colaboración con OikosMSP

Gestionar el Consentimiento de las Cookies
Utilizamos tecnologías como las cookies para almacenar y/o acceder a la información del dispositivo. Lo hacemos para mejorar la experiencia de navegación y para mostrar anuncios personalizados. El consentimiento a estas tecnologías nos permitirá procesar datos como el comportamiento de navegación o las identificaciones únicas en este sitio. No consentir o retirar el consentimiento, puede afectar negativamente a ciertas características y funciones.
Funcional Siempre activo
El almacenamiento o acceso técnico es estrictamente necesario para el propósito legítimo de permitir el uso de un servicio específico explícitamente solicitado por el abonado o usuario, o con el único propósito de llevar a cabo la transmisión de una comunicación a través de una red de comunicaciones electrónicas.
Preferencias
El almacenamiento o acceso técnico es necesario para la finalidad legítima de almacenar preferencias no solicitadas por el abonado o usuario.
Estadísticas
El almacenamiento o acceso técnico que es utilizado exclusivamente con fines estadísticos. El almacenamiento o acceso técnico que es utilizado exclusivamente con fines estadísticos anónimos. Sin una requerimiento, el cumplimiento voluntario por parte de su proveedor de servicios de Internet, o los registros adicionales de un tercero, la información almacenada o recuperada sólo para este propósito no se puede utilizar para identificarlo.
Marketing
El almacenamiento o acceso técnico es necesario para crear perfiles de usuario para enviar publicidad, o para rastrear al usuario en un sitio web o en varios sitios web con fines de marketing similares.
Administrar opciones Gestionar los servicios Gestionar proveedores Leer más sobre estos propósitos
Preferencias
{title} {title} {title}