ST_SwapOrdinates
を使用します
、そのためだけに作られています:
SELECT ST_AsText(
ST_SwapOrdinates(
'POLYGON((1 2,5 2,1 3,1 2))'::geometry,
'xy'
)
);
st_astext
════════════════════════════
POLYGON((2 1,2 5,3 1,2 1))
(1 row)