I have a more complicated dataset in real life but here I'll include a simplified case to illustrate what is happening. I'm almost certain it due to my lack of knowledge on how to use `ogr2ogr` properly for my use-case. So to start I have a geojson file, call it `foo.geojson`: ```json { "type": "FeatureCollection", "features": [{ "type": "Feature", "properties": { "value": 0 }, "geometry": { "type": "Polygon", "coordinates": [ [ [-77, 40], [-77, 41], [-76, 41], [-76, 42], [-75, 42], [-75, 41], [-76, 41], [-76, 40], [-77, 40] ] ] } }] } ``` I have converted that to a sqlite database with the following command: ogr2ogr -f SQLite bar.sqlite foo.geojson So far so good, the data in the sqlite file looks good in qgis. Finally I want to use a sql query on the data to transform it in some way. For example: ogr2ogr -f SQLite -dialect sqlite -sql "select st_buffer(geometry, -1) as geometry, ogc_fid, value from foo" baz.sqlite bar.sqlite -nln baz The command completes successfully but it will not load into qgis. So I take a look at what is inside of it. And yes it has my one feature's properties, but there is no geometry attached: sqlite> select * from baz; 1||0 sqlite> select * from geometry_columns; sqlite> If I change my sql to `select *` everything works as expected but it seems I can't do anything interesting to the geometry and have that be the result in my new db/table.