No QGIS, é comum precisar associar dados provenientes de uma tabela externa a uma camada geográfica. Por exemplo, podemos ter uma camada de municípios e um ficheiro CSV com estatísticas demográficas.
Para combinar estas informações, o QGIS permite realizar uma junção de tabelas. Esta operação consiste em relacionar duas tabelas utilizando um campo comum.
Neste artigo veremos como juntar uma tabela no QGIS e como evitar os erros mais frequentes.
1. Princípio da junção
Uma junção permite adicionar campos de uma tabela externa à tabela de atributos de uma camada.
Exemplo:
| codigo_municipio | nome | populacao |
|---|---|---|
| 001 | Municipio A | 1200 |
| 002 | Municipio B | 850 |
Se a camada geográfica também tiver um campo codigo_municipio, o QGIS pode utilizar esse campo para associar os dados.
2. Preparar as tabelas
Antes de realizar a junção, é importante verificar que:
- existe um campo comum nas duas tabelas
- os valores correspondem exatamente
- o tipo de campo é o mesmo (texto ou inteiro).
Exemplo:
| Camada geográfica | Tabela CSV |
|---|---|
| codigo | codigo |
3. Adicionar a tabela no QGIS
Se a tabela estiver num ficheiro CSV:
Menu Camada → Adicionar camada → Adicionar camada de texto delimitado
A tabela aparecerá então na lista de camadas.
4. Realizar a junção
No QGIS:
- Clicar com o botão direito na camada geográfica
- Selecionar Propriedades
- Abrir o separador Junções
- Clicar em Adicionar junção

Na janela:
- escolher a tabela a juntar
- selecionar o campo comum
- selecionar o campo correspondente na camada
Depois clicar em OK.
Os novos campos aparecerão na tabela de atributos.
5. Verificar a junção
Depois de realizar a junção:
- abrir a tabela de atributos
- verificar se os novos campos estão presentes
- confirmar se os valores correspondem corretamente.
Se alguns campos aparecerem vazios, normalmente significa que não foi encontrada correspondência.
6. Junção de tabela vs junção espacial no QGIS
No QGIS existem dois tipos de junções:
- junção de tabela
- junção espacial
Estas duas operações permitem associar dados, mas o seu princípio é diferente.
Junção de tabela
A junção de tabela utiliza um campo comum entre duas tabelas.
Exemplo:
| codigo_municipio | nome |
|---|---|
| 001 | Municipio A |
| 002 | Municipio B |
E uma tabela estatística:
| codigo_municipio | populacao |
|---|---|
| 001 | 1200 |
| 002 | 850 |
A junção é realizada utilizando o campo codigo_municipio.
Junção espacial
A junção espacial utiliza a posição geográfica dos objetos.
Exemplo:
- uma camada de municípios
- uma camada de pontos representando escolas
Assim, podemos associar a cada município o número de escolas localizadas no seu território.
No QGIS:
Vector → Ferramentas de gestão de dados → Juntar atributos por localização

A relação espacial pode ser por exemplo:
- intersecta
- contém
- está dentro de.
Comparação
| Junção de tabela | Junção espacial |
|---|---|
| utiliza um campo comum | utiliza a posição geográfica |
| associa duas tabelas | associa duas camadas geográficas |
| muito rápida | mais exigente em cálculo |
A reter
- Junção de tabela → baseada num campo comum
- Junção espacial → baseada na geometria dos objetos
Ambas as operações são muito úteis para enriquecer os dados geográficos no QGIS.
Perguntas frequentes
Os campos aparecem vazios
Isto acontece frequentemente quando:
- os valores não correspondem exatamente
- o tipo de campo é diferente (texto vs inteiro).
A junção não funciona
Verifique:
- a ortografia dos valores
- a presença de espaços nos campos
- o tipo de dados.
As causas frequentes são:
- valores diferentes nos campos
- espaços ou caracteres invisíveis
- tipos de campos diferentes.
A junção desaparece após reiniciar o QGIS
Por defeito, a junção é temporária.
Para manter os dados, é necessário exportar a camada:
Clicar com o botão direito na camada → Exportar → Guardar entidades como…

Três razões pelas quais uma junção não funciona no QGIS
Verificar os valores com valores únicos
Quando a junção não funciona, o problema geralmente vem do campo utilizado para ligar as tabelas.
Pode tratar-se de:
- valores diferentes
- espaços invisíveis
- diferenças entre maiúsculas e minúsculas
- tipos de campos diferentes.
Uma forma simples é verificar os valores únicos.
No QGIS:
- abrir a tabela de atributos
- abrir o painel de estatísticas ou a ferramenta de expressões
- mostrar os valores únicos do campo utilizado para a junção
Assim é possível verificar se os valores correspondem entre as duas tabelas.
Exemplo de problema frequente
Numa camada:
001
002
003
Na tabela CSV:
1
2
3
A junção não funcionará porque os valores não são idênticos.
Outro problema frequente: espaços
Em alguns ficheiros CSV podem existir espaços.
Exemplo:
001
002
003
mas na realidade os valores são:
001␠
002␠
003␠
Estes espaços impedem a correspondência.
Solução: limpar os campos
No QGIS podemos utilizar uma expressão para remover os espaços:
trim("campo")
Isto permite limpar os valores antes de realizar a junção.
Conclusão
A junção de tabelas é uma operação muito útil no QGIS para enriquecer uma camada geográfica com dados provenientes de uma tabela externa.
Verificando a existência de um campo comum e a correspondência dos valores, torna-se muito simples associar informações estatísticas a dados espaciais.