Boa tarde a todos,
Pergunto se é possível fazer um query SQL a uma base postgis usando um shapefile como limite geográfico para a selecção de dados e se sim como devo fazé-lo?
Muito obrigado.
Cumprimentos,
Luis Bentes
Boa tarde a todos,
Pergunto se é possível fazer um query SQL a uma base postgis usando um shapefile como limite geográfico para a selecção de dados e se sim como devo fazé-lo?
Muito obrigado.
Cumprimentos,
Luis Bentes
Luís,
Sem ter experimentado.
Carregue dados PostGIS e experimente no DB Manager usar como Virtual Layers.
Nelson
Enviado do meu iPhone
No dia 04/04/2019, às 14:58, Luis Bentes <lmbentes@gmail.com> escreveu:
Boa tarde a todos,
Pergunto se é possível fazer um query SQL a uma base postgis usando um shapefile como limite geográfico para a selecção de dados e se sim como devo fazé-lo?
Muito obrigado.
Cumprimentos,
Luis Bentes
_______________________________________________
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
Obrigado Nelson, no entanto, o que quero mesmo é que durante o carregamento dos dados PostGIS eles sejam selecionados usando uma shape (a integrar no SQL), ainda antes de os carregar.
Luis
On Thu, Apr 4, 2019 at 3:36 PM Nelson Silva <nelson.jgs@gmail.com> wrote:
Luís,
Sem ter experimentado.
Carregue dados PostGIS e experimente no DB Manager usar como Virtual Layers.Nelson
Enviado do meu iPhone
No dia 04/04/2019, às 14:58, Luis Bentes <lmbentes@gmail.com> escreveu:
Boa tarde a todos,
Pergunto se é possível fazer um query SQL a uma base postgis usando um shapefile como limite geográfico para a selecção de dados e se sim como devo fazé-lo?
Muito obrigado.
Cumprimentos,
Luis Bentes
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
Pelo que eu entendi, eu transformava o shapefile em PostGis e faria o SQL de seleção com as 2 tabelas no mesmo formato. No QGIS, Gerenciador de Bd, Exportar para arquivo, se consegue esta transformação.
Att., Fernando Lamas
Em qui, 4 de abr de 2019 às 10:36, Nelson Silva <nelson.jgs@gmail.com> escreveu:
Luís,
Sem ter experimentado.
Carregue dados PostGIS e experimente no DB Manager usar como Virtual Layers.Nelson
Enviado do meu iPhone
No dia 04/04/2019, às 14:58, Luis Bentes <lmbentes@gmail.com> escreveu:
Boa tarde a todos,
Pergunto se é possível fazer um query SQL a uma base postgis usando um shapefile como limite geográfico para a selecção de dados e se sim como devo fazé-lo?
Muito obrigado.
Cumprimentos,
Luis Bentes
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
Usando o que o Nelson falou pode resultar, mas a query acaba por não operar no Postgres, mas localmente numa spatialite.
O ideal seria importar a tal shapefile para o postgis.
Outra hipotese seria usar o Foreign data wrapper GDAL, mas Parece-me que o shapefile teria de estar acessível ao servidor com o Postgresql instalado.
https://wiki.postgresql.org/wiki/Foreign_data_wrappers#Geo_Wrappers
Cumprimentos,
Alexandre
A qui, 4/04/2019, 15:36, Nelson Silva <nelson.jgs@gmail.com> escreveu:
Luís,
Sem ter experimentado.
Carregue dados PostGIS e experimente no DB Manager usar como Virtual Layers.Nelson
Enviado do meu iPhone
No dia 04/04/2019, às 14:58, Luis Bentes <lmbentes@gmail.com> escreveu:
Boa tarde a todos,
Pergunto se é possível fazer um query SQL a uma base postgis usando um shapefile como limite geográfico para a selecção de dados e se sim como devo fazé-lo?
Muito obrigado.
Cumprimentos,
Luis Bentes
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
Ok, então pelo que entendi importava a shape para o postgis, a minha área de estudo, e depois utilizava a geometria desta para selecionar a outra tabela, estou correcto?
Obrigado
On Thu, Apr 4, 2019 at 3:50 PM Alexandre Neto <senhor.neto@gmail.com> wrote:
Usando o que o Nelson falou pode resultar, mas a query acaba por não operar no Postgres, mas localmente numa spatialite.
O ideal seria importar a tal shapefile para o postgis.
Outra hipotese seria usar o Foreign data wrapper GDAL, mas Parece-me que o shapefile teria de estar acessível ao servidor com o Postgresql instalado.
https://wiki.postgresql.org/wiki/Foreign_data_wrappers#Geo_Wrappers
Cumprimentos,
Alexandre
A qui, 4/04/2019, 15:36, Nelson Silva <nelson.jgs@gmail.com> escreveu:
Luís,
Sem ter experimentado.
Carregue dados PostGIS e experimente no DB Manager usar como Virtual Layers.Nelson
Enviado do meu iPhone
No dia 04/04/2019, às 14:58, Luis Bentes <lmbentes@gmail.com> escreveu:
Boa tarde a todos,
Pergunto se é possível fazer um query SQL a uma base postgis usando um shapefile como limite geográfico para a selecção de dados e se sim como devo fazé-lo?
Muito obrigado.
Cumprimentos,
Luis Bentes
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
Se a ideia é cruzar dados, parece que ideal será carregar Shapefile para base dados e depois criar uma View para carregamento dos dados no QGIS
Nelson
No dia 04/04/2019, às 16:01, Luis Bentes <lmbentes@gmail.com> escreveu:
Ok, então pelo que entendi importava a shape para o postgis, a minha área de estudo, e depois utilizava a geometria desta para selecionar a outra tabela, estou correcto?
Obrigado
On Thu, Apr 4, 2019 at 3:50 PM Alexandre Neto <senhor.neto@gmail.com> wrote:
Usando o que o Nelson falou pode resultar, mas a query acaba por não operar no Postgres, mas localmente numa spatialite.
O ideal seria importar a tal shapefile para o postgis.
Outra hipotese seria usar o Foreign data wrapper GDAL, mas Parece-me que o shapefile teria de estar acessível ao servidor com o Postgresql instalado.
https://wiki.postgresql.org/wiki/Foreign_data_wrappers#Geo_Wrappers
Cumprimentos,
Alexandre
A qui, 4/04/2019, 15:36, Nelson Silva <nelson.jgs@gmail.com> escreveu:
Luís,
Sem ter experimentado.
Carregue dados PostGIS e experimente no DB Manager usar como Virtual Layers.Nelson
Enviado do meu iPhone
No dia 04/04/2019, às 14:58, Luis Bentes <lmbentes@gmail.com> escreveu:
Boa tarde a todos,
Pergunto se é possível fazer um query SQL a uma base postgis usando um shapefile como limite geográfico para a selecção de dados e se sim como devo fazé-lo?
Muito obrigado.
Cumprimentos,
Luis Bentes
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
Como está a fazer esse import. Eu acho que com ogr2org talvez dê.
Caso contrário pelo qgis pode usar a shape para seleccionar os elementos que quer importar, e depois no db manager usar a opção selected only.
A qui, 4/04/2019, 15:47, Luis Bentes <lmbentes@gmail.com> escreveu:
Obrigado Nelson, no entanto, o que quero mesmo é que durante o carregamento dos dados PostGIS eles sejam selecionados usando uma shape (a integrar no SQL), ainda antes de os carregar.
Luis
On Thu, Apr 4, 2019 at 3:36 PM Nelson Silva <nelson.jgs@gmail.com> wrote:
Luís,
Sem ter experimentado.
Carregue dados PostGIS e experimente no DB Manager usar como Virtual Layers.Nelson
Enviado do meu iPhone
No dia 04/04/2019, às 14:58, Luis Bentes <lmbentes@gmail.com> escreveu:
Boa tarde a todos,
Pergunto se é possível fazer um query SQL a uma base postgis usando um shapefile como limite geográfico para a selecção de dados e se sim como devo fazé-lo?
Muito obrigado.
Cumprimentos,
Luis Bentes
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
A questão principal que tenho, para além da que eu coloquei inicialmente, é que a tabela da qual eu quero selecionar dados de uma área reduzida (a minha área de estudo) tem muitos milhões de dados e por isso nunca a consigo carregar em nenhum computador a que tenho acesso. Por isso pensei em fazer a selecção dos dados antes de os importar para o QGIS, usando para isso o SQL. Tudo seria mais simples se a área tivesse um formato regular mas como é um poligono de formato estranho não ajuda nada, daí querer utilizar a informação da geometria da shape da área de estudo para selecionar os dados da outra tabela.
De qualquer modo vou continuar a tentar.
Obrigado
Cumprimentos
On Thu, Apr 4, 2019 at 4:30 PM Alexandre Neto <senhor.neto@gmail.com> wrote:
Como está a fazer esse import. Eu acho que com ogr2org talvez dê.
Caso contrário pelo qgis pode usar a shape para seleccionar os elementos que quer importar, e depois no db manager usar a opção selected only.
A qui, 4/04/2019, 15:47, Luis Bentes <lmbentes@gmail.com> escreveu:
Obrigado Nelson, no entanto, o que quero mesmo é que durante o carregamento dos dados PostGIS eles sejam selecionados usando uma shape (a integrar no SQL), ainda antes de os carregar.
Luis
On Thu, Apr 4, 2019 at 3:36 PM Nelson Silva <nelson.jgs@gmail.com> wrote:
Luís,
Sem ter experimentado.
Carregue dados PostGIS e experimente no DB Manager usar como Virtual Layers.Nelson
Enviado do meu iPhone
No dia 04/04/2019, às 14:58, Luis Bentes <lmbentes@gmail.com> escreveu:
Boa tarde a todos,
Pergunto se é possível fazer um query SQL a uma base postgis usando um shapefile como limite geográfico para a selecção de dados e se sim como devo fazé-lo?
Muito obrigado.
Cumprimentos,
Luis Bentes
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
Olá,
Parece-me que a solução mais adequada é carregar a área na base de dados e depois fazer uma query que só carrega no QGIS os dados dentro da shapefile.
Se uma tabela se chamar 'estudo' e a outra 'areadeestudo', a query seria:
select estudo.*
from estudo, areaestudo
where st_contains(areaestudo.geom, estudo.geom)
Pode-se acrescentar mais condições no where para restringir os dados a carregar no QGIS.
Bom trabalho
Jorge Gustavo
Às 16:58 de 04/04/19, Luis Bentes escreveu:
A questão principal que tenho, para além da que eu coloquei inicialmente, é que a tabela da qual eu quero selecionar dados de uma área reduzida (a minha área de estudo) tem muitos milhões de dados e por isso nunca a consigo carregar em nenhum computador a que tenho acesso. Por isso pensei em fazer a selecção dos dados antes de os importar para o QGIS, usando para isso o SQL. Tudo seria mais simples se a área tivesse um formato regular mas como é um poligono de formato estranho não ajuda nada, daí querer utilizar a informação da geometria da shape da área de estudo para selecionar os dados da outra tabela.
De qualquer modo vou continuar a tentar.
Obrigado
CumprimentosOn Thu, Apr 4, 2019 at 4:30 PM Alexandre Neto <senhor.neto@gmail.com> wrote:
Como está a fazer esse import. Eu acho que com ogr2org talvez dê.
Caso contrário pelo qgis pode usar a shape para seleccionar os elementos que quer importar, e depois no db manager usar a opção selected only.
A qui, 4/04/2019, 15:47, Luis Bentes <lmbentes@gmail.com> escreveu:
Obrigado Nelson, no entanto, o que quero mesmo é que durante o carregamento dos dados PostGIS eles sejam selecionados usando uma shape (a integrar no SQL), ainda antes de os carregar.
Luis
On Thu, Apr 4, 2019 at 3:36 PM Nelson Silva <nelson.jgs@gmail.com> wrote:
Luís,
Sem ter experimentado.
Carregue dados PostGIS e experimente no DB Manager usar como Virtual Layers.Nelson
Enviado do meu iPhone
No dia 04/04/2019, às 14:58, Luis Bentes <lmbentes@gmail.com> escreveu:
Boa tarde a todos,
Pergunto se é possível fazer um query SQL a uma base postgis usando um shapefile como limite geográfico para a selecção de dados e se sim como devo fazé-lo?
Muito obrigado.
Cumprimentos,
Luis Bentes
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt_______________________________________________ QGIS-pt mailing list [QGIS-pt@lists.osgeo.org](mailto:QGIS-pt@lists.osgeo.org) [https://lists.osgeo.org/mailman/listinfo/qgis-pt](https://lists.osgeo.org/mailman/listinfo/qgis-pt)
–
Geomaster, LDA
VENHA DESCOBRIR O CAMINHO DO OPEN SOURCE CONNOSC****O
Avenida Barros e Soares N.º 423, 4715-214 Braga VAT/NIF 510 906 109 Phone +351 253 680 323 Site geomaster.pt GPS 41.53322, -8.41929 |
— |
Jorge Gustavo Rocha CTO Mobile +351 910 333 888 Email jgr@geomaster.pt |
---|
Sugestão para evitar a importação da shape:
Use o ogr2ogr para exportar a sua área em CSV com formato da geometria em WKT ‘visível’
ogr2ogr -f CSV -lco GEOMETRY=AS_WKT <my_out_file>.csv <my_source_shape>.shp <my_layer_name>
Copie o texto do do seu polígono em WKT e utilize directamente no SQL do PostGIS (no ‘where’ em conjunto com ST_Intersects(ST_GeomFromText(‘<string_wkt’, srid), .geom)
Cumprimentos,
F.
Fernando Ribeiro
Olá Luis. Se percebi bem a pergunta é: como carregar um ficheiro para
postgis, mas apenas os dados localizados dentro da área num shapefile
separado?
Para mim a melhor opção é, como já disseram, usar o ogr2ogr. Há uma opção
mesmo para isto:
/-clipsrc [xmin ymin xmax ymax]|WKT|datasource|spat_extent:
(starting with GDAL 1.7.0) clip geometries to the specified bounding box
(expressed in source SRS), WKT geometry (POLYGON or MULTIPOLYGON), from a
datasource or to the spatial extent of the -spat option if you use the
spat_extent keyword. When specifying a datasource, you will generally want
to use it in combination of the -clipsrclayer, -clipsrcwhere or -clipsrcsql
options/
Ou seja, podemos adicionar as opções -clipsrc x:\dados\limite.shp
Outra opção para melhorar a performance do carregamento para postgis é a
--config PG_USE_COPY. E outra é aumentar os n.º de writes em cada commit com
-gt 100000.
O comando final seria (não testei):
ogr2ogr --config PG_USE_COPY -gt 100000 -f "PostgreSQL" PG:"host=myhost
user=myloginname dbname=mydbname password=mypassword" -clipsrc
x:\dados\limite_clip.shp shapefile_importar.shp
Diz se resulta alguma coisa de jeito.
Abr
--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-pt-f5128248.html
Muito obrigado, as vossas sugestões (Jorge Gustavo Rocha e Fernando Ribeiro) funcionaram na perfeição.
Cumprimentos
Luis
On Thu, Apr 4, 2019 at 5:26 PM Jorge Gustavo Rocha <jgr@geomaster.pt> wrote:
Olá,
Parece-me que a solução mais adequada é carregar a área na base de dados e depois fazer uma query que só carrega no QGIS os dados dentro da shapefile.
Se uma tabela se chamar 'estudo' e a outra 'areadeestudo', a query seria:
select estudo.* from estudo, areaestudo where st_contains(areaestudo.geom, estudo.geom) Pode-se acrescentar mais condições no where para restringir os dados a carregar no QGIS. Bom trabalho Jorge Gustavo
Às 16:58 de 04/04/19, Luis Bentes escreveu:
A questão principal que tenho, para além da que eu coloquei inicialmente, é que a tabela da qual eu quero selecionar dados de uma área reduzida (a minha área de estudo) tem muitos milhões de dados e por isso nunca a consigo carregar em nenhum computador a que tenho acesso. Por isso pensei em fazer a selecção dos dados antes de os importar para o QGIS, usando para isso o SQL. Tudo seria mais simples se a área tivesse um formato regular mas como é um poligono de formato estranho não ajuda nada, daí querer utilizar a informação da geometria da shape da área de estudo para selecionar os dados da outra tabela.
De qualquer modo vou continuar a tentar.
Obrigado
CumprimentosOn Thu, Apr 4, 2019 at 4:30 PM Alexandre Neto <senhor.neto@gmail.com> wrote:
Como está a fazer esse import. Eu acho que com ogr2org talvez dê.
Caso contrário pelo qgis pode usar a shape para seleccionar os elementos que quer importar, e depois no db manager usar a opção selected only.
A qui, 4/04/2019, 15:47, Luis Bentes <lmbentes@gmail.com> escreveu:
Obrigado Nelson, no entanto, o que quero mesmo é que durante o carregamento dos dados PostGIS eles sejam selecionados usando uma shape (a integrar no SQL), ainda antes de os carregar.
Luis
On Thu, Apr 4, 2019 at 3:36 PM Nelson Silva <nelson.jgs@gmail.com> wrote:
Luís,
Sem ter experimentado.
Carregue dados PostGIS e experimente no DB Manager usar como Virtual Layers.Nelson
Enviado do meu iPhone
No dia 04/04/2019, às 14:58, Luis Bentes <lmbentes@gmail.com> escreveu:
Boa tarde a todos,
Pergunto se é possível fazer um query SQL a uma base postgis usando um shapefile como limite geográfico para a selecção de dados e se sim como devo fazé-lo?
Muito obrigado.
Cumprimentos,
Luis Bentes
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt_______________________________________________ QGIS-pt mailing list [QGIS-pt@lists.osgeo.org](mailto:QGIS-pt@lists.osgeo.org) [https://lists.osgeo.org/mailman/listinfo/qgis-pt](https://lists.osgeo.org/mailman/listinfo/qgis-pt)
–
Geomaster, LDA
VENHA DESCOBRIR O CAMINHO DO OPEN SOURCE CONNOSC****O
Avenida Barros e Soares
N.º 423, 4715-214 Braga
VAT/NIF 510 906 109
Phone +351 253 680 323
Site geomaster.pt
GPS 41.53322, -8.41929
—
Jorge Gustavo Rocha
CTO
Mobile +351 910 333 888
Email jgr@geomaster.pt
QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt