¿Ejecutar consultas SQL contra shapefile en QGIS?

9

¿Hay alguna forma de importar un archivo shape a QGIS y luego ejecutar consultas SQL espaciales en él?

Obviamente, puedo usar ogr2ogr -sqlpara hacer esto, pero tengo que importar el resultado en QGIS cada vez que lo mire, lo cual es una molestia.

Sería genial si pudiera importar el archivo de forma a QGIS, luego ejecutar SQL en él y ver los resultados al instante.

Ricardo
fuente

Respuestas:

15

Puedes usar una capa virtual. Cargue su Shapefile en QGIS, luego vaya a Layer / Add Layer / Add-Edit Virtual Layer. Escriba el SQL que desee.

Por ejemplo, si su archivo de forma tiene nombre myshpy tiene un atributo test, puede consultarlo como:

select * from myshp a
where a.test = 1234;

O puede hacer una consulta espacial usando el geometrycampo:

select * from myshp 
where st_intersects(geometry, make_point(1,2));
JGH
fuente