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.



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.

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

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.

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.

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.

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.


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.

Desde ciudades, que veremos los comerciales que tiene asignados cada una.
Y desde empleados, que veremos qué ciudad tiene asignado

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!
Buenos días, tengo problemas para graficar las tablas con atributos relacionados en el mapa. SALUDOS
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?
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.