既存の 2 つの列から 3 番目の列を作成したいと考えています。現在のテーブル (座標) が次のようになっているとします。
(table: coords)
+----------------+------+
| x | y |
+----------------+------+
| 1 | 0 |
+----------------+------+
| 1 | 1 |
+----------------+------+
他の 2 つから ( PostGISから)タイプ ジオメトリの 3 番目の列を作成し、この列をそのテーブルに追加したいと考えています。最終的なテーブルは次のようになります。
(table: pointsT)
+-----+----------+------+----+-----
| x | y | coord |
+----------------+------+----------
| 1 | 0 | (1, 0) |
+----------------+------+----------
| 1 | 1 | (1, 1) |
+----------------+------+----------
これから表を作りたいと思います。何かのようなもの:
CREATE TABLE pointsT(x text, y text, point geometry);
INSERT INTO points(x, y, point)
SELECT CO.x, CO.y, CO.'POINT(CO.x CO.y)' AS p FROM coords AS CO;
編集: Edwins Answer Using Edwins answer から、これは完全なコマンドになります:
CREATE TABLE pointsT(x text, y text, point geometry);
INSERT INTO points(x, y, point)
SELECT CO.x, CO.y, ST_AsText(ST_SetSRID(ST_Point(CO.x CO.y), 4326) AS wgs84long_la FROM coords AS CO;