By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
Help with an interesting Postgres question: Why isn't an Index Only Scan used on a partition accessed via the parent table?.
CREATE FUNCTION
select_by_txt |
---|
SELECT ST_AsMVT(mvtgeom, 'public.select_by_txt') FROM ( SELECT ST_AsMVTGeom(ST_Transform(t.geom, 3857), bounds.geom) AS geom, col1, col2 FROM table1 t JOIN (SELECT ST_TileEnvelope($1, $2, $3)) AS bounds(geom) ON ST_Intersects(t.geom, ST_Transform(bounds.geom, 4326)) ) mvtgeom |
SELECT 1
select_by_txt |
---|
SELECT ST_AsMVT(mvtgeom, 'public.select_by_txt') FROM ( SELECT ST_AsMVTGeom(ST_Transform(t.geom, 3857), bounds.geom) AS geom, col1, col2 FROM table1 t JOIN (SELECT ST_TileEnvelope($1, $2, $3)) AS bounds(geom) ON ST_Intersects(t.geom, ST_Transform(bounds.geom, 4326)) ) mvtgeom |
SELECT 1
select_by_txt |
---|
SELECT ST_AsMVT(mvtgeom, 'public.select_by_txt') FROM ( SELECT ST_AsMVTGeom(ST_Transform(t.geom, 3857), bounds.geom) AS geom, col1, col2, "col3'); DROP TABLE table1;--" FROM table1 t JOIN (SELECT ST_TileEnvelope($1, $2, $3)) AS bounds(geom) ON ST_Intersects(t.geom, ST_Transform(bounds.geom, 4326)) ) mvtgeom |
SELECT 1
select_by_txt |
---|
SELECT ST_AsMVT(mvtgeom, 'public.select_by_txt') FROM ( SELECT ST_AsMVTGeom(ST_Transform(t.geom, 3857), bounds.geom) AS geom, col1 FROM table1 t JOIN (SELECT ST_TileEnvelope($1, $2, $3)) AS bounds(geom) ON ST_Intersects(t.geom, ST_Transform(bounds.geom, 4326)) ) mvtgeom |
SELECT 1
select_by_txt |
---|
SELECT ST_AsMVT(mvtgeom, 'public.select_by_txt') FROM ( SELECT ST_AsMVTGeom(ST_Transform(t.geom, 3857), bounds.geom) AS geom FROM table1 t JOIN (SELECT ST_TileEnvelope($1, $2, $3)) AS bounds(geom) ON ST_Intersects(t.geom, ST_Transform(bounds.geom, 4326)) ) mvtgeom |
SELECT 1