Municípios & Códigos
Filtrando por cidade na RFB
O campo cidade em estabelecimentos guarda um código numérico, não o nome. Aqui está como usar isso.
Como o campo cidade funciona
Cuidado com o nome enganoso
O campo cidade em estabelecimentos não guarda o nome da cidade. Guarda um código numérico de 4 dígitos. Pra saber o nome, você junta com a tabela municipios.
O campo codigo_municipio, apesar do nome, guarda o código do estado (2 dígitos). É confuso mas é assim que está no banco.
| Campo | O que realmente contém | Exemplo |
|---|---|---|
cidade | Código do município (4 dígitos) | 4625 = Ipatinga |
codigo_municipio | Código do estado (2 dígitos) | 31 = Minas Gerais |
uf | Sigla do estado | MG |
Ipatinga — código 4625
4625
Código de Ipatinga tabela municipios
135.226
CNPJs em Ipatinga WHERE cidade = '4625'
MG
Estado codigo_municipio = '31'
-- Buscar código de um município pelo nome
SELECT codigo, nome
FROM municipios
WHERE nome ILIKE '%IPATINGA%'
-- Resultado: 4625 | IPATINGA
-- Todos os CNPJs de Ipatinga na RFB
SELECT * FROM estabelecimentos
WHERE cidade = '4625'
-- Confirmar com nome legível
SELECT est.*, mun.nome AS cidade_nome
FROM estabelecimentos est
JOIN municipios mun ON est.cidade = mun.codigo
WHERE mun.nome = 'IPATINGA'Municípios da região (Vale do Aço)
| Código | Município | UF |
|---|---|---|
4625 | Ipatinga ⭐ | MG |
4763 | Coronel Fabriciano | MG |
4073 | Timóteo | MG |
4793 | Santana do Paraíso | MG |
Como descobrir qualquer código
Use SELECT * FROM municipios WHERE nome ILIKE '%NOME%' pra achar o código de qualquer município brasileiro.
Filtrando múltiplos municípios
-- Todos os municípios de MG de uma vez
SELECT est.*, mun.nome AS cidade_nome
FROM estabelecimentos est
JOIN municipios mun ON est.cidade = mun.codigo
WHERE est.uf = 'MG'
-- Vale do Aço (vários municípios)
SELECT est.*, mun.nome AS cidade_nome
FROM estabelecimentos est
JOIN municipios mun ON est.cidade = mun.codigo
WHERE est.cidade IN ('4625', '4763', '4073', '4793')