Skip to content

Instantly share code, notes, and snippets.

@marcellobenigno
Created March 10, 2022 21:26
Show Gist options
  • Save marcellobenigno/a4c4db86efb9a6d87b4a26dc425cef8b to your computer and use it in GitHub Desktop.
Save marcellobenigno/a4c4db86efb9a6d87b4a26dc425cef8b to your computer and use it in GitHub Desktop.
-- Quais são os municípios que contém os poços com os seguintes ids:
-- 523, 524, 582, 588, 149, 367
SELECT DISTINCT municipios.nome
FROM pocos, municipios
WHERE
pocos.id IN (523, 524, 582, 588, 149, 367)
AND
ST_Contains(municipios.geom, pocos.geom);
-- Podemos utilizar alias nos nomes das tabelas:
SELECT DISTINCT m.nome
FROM pocos p, municipios m
WHERE
p.id IN (523, 524, 582, 588, 149, 367)
AND
ST_Contains(m.geom, p.geom);
-- Quais são os municípios que fazem fronteira com Campina Grande?
SELECT b.nome
FROM municipios a, municipios b
WHERE a.nome = 'Campina Grande'
AND ST_Touches(a.geom, b.geom);
-- Ou:
SELECT nome
FROM municipios
WHERE ST_Touches(
municipios.geom,
(SELECT geom FROM municipios WHERE nome = 'Campina Grande')
)
-- Quais são os municípios por onde passa a BR-230?
SELECT m.nome
FROM malha_viaria r, municipios m
WHERE r.rodovia_no = 'BR-230'
AND ST_Crosses(m.geom, r.geom)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment