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.