sql >> Base de Datos >  >> RDS >> PostgreSQL

Cómo crear una tabla basada en una consulta y filas recuperadas de la declaración de selección

Utilice ST_DumpPoints y luego ST_X y ST_Y , por ejemplo:

CREATE TABLE table_name (x numeric, y numeric);

INSERT INTO table_name
SELECT ST_X(geom),ST_Y(geom) FROM (
  SELECT (ST_DumpPoints(ST_Envelope('your_geometry'))).geom
) j (geom);

O si quieres crear la tabla con las columnas exactas de tu consulta

CREATE TABLE table_name AS
SELECT ST_X(geom),ST_Y(geom) FROM (
  SELECT (ST_DumpPoints(ST_Envelope('your_geometry'))).geom
) j (geom);

Demostración:db<>fiddle