Більше

Отримати lat та long у дві колонки як плаваючі для всіх точок у MULTILINESTRING у PostGIS?

Отримати lat та long у дві колонки як плаваючі для всіх точок у MULTILINESTRING у PostGIS?


ST_DumpPoints (geom)дає мені щось подібне:

("{1,1}", 0101000020E61000002DEDD45CEEB362C0CE1951DA1BC24E40) ("{1,2}", 0101000020E6100000C94AD826F1B362C09D4B7BC72CC24E40)…

Де я хочу, щоб це виглядало так

наступні лат лон

1, 61.1, -149.1

2, 61.2, -149.2…

Я бавився зST_AsTextіST_AsGeoJsonщо зближує мене, але я хотів би проаналізувати його з SQL замість тексту.


Є хороший приклад цього в документації дляST_DumpPoints:

ВИБЕРІТЬ ogc_fid, (dp) .path [1] AS seq, ST_AsText ((dp) .geom) AS wktnode, ST_X ((dp) .geom), ST_Y ((dp) .geom) FROM (SELECT ogc_fid, ST_DumpPoints (the_geom) ) AS dp FROM my_table) ЯК foo;

Повернення:

ogc_fid; seq; wktnode; st_x; st_y 84; 1; "ТОЧКА (1760789.64678326 5433999.35927963)"; 1760789.64678326; 5433999.35927963 84; 2; "POINT (1760016.74943794 5433941.505015334414937490450415414937490450415413 ; 1755882.28518908; 5434644.98441615 1; 2; "ТОЧКИ (+1755953,62731641 +5434610,42870749)"; +1755953,62731641; +5434610,42870749 1; 3; "ТОЧКИ (+1756017,76954237 +5434602,51304863)"; +1756017,76954237; +5434602,51304863 2; 1; "ТОЧКИ (+1756055,96704621 +5434673,63981803)"; +1756055,96704621; +5434673,63981803