我嘗試從查詢中插入表格geofield
中的多邊形。該表geofield
的定義是這樣的:從postgis中的查詢插入表格
CREATE TABLE geofield(id SERIAL PRIMARY KEY, field GEOMETRY);
insert into geofield(field) values (myfield)
SELECT
'POLYGON(('||cast((select lat from coordinates where id=1)as varchar)||' '||
cast((select lon from coordinates where id=1)as varchar)||','||
cast((select lat from coordinates where id=2)as varchar)||' '||
cast((select lon from coordinates where id=2)as varchar)||','||
cast((select lat from coordinates where id=3)as varchar)||' '||
cast((select lon from coordinates where id=3)as varchar)||','||
cast((select lat from coordinates where id=4)as varchar)||' '||
cast((select lon from coordinates where id=4)as varchar)||','||
cast((select lat from coordinates where id=1)as varchar)||' '||
cast((select lon from coordinates where id=1)as varchar)||'))') AS myfield;
的SELECT獨自返回我:
POLYGON((46.744628268759314 6.569952920654968,46.74441692818192 6.570487107359068,46.74426116111054 6.570355867853787,46.74447250168793 6.569821681149689,46.744628268759314 6.569952920654968))
但它不工作,我ST_GeomFromText但同樣的結果也tryed。
合適「INSERT INTO ... SELECT」的語法不包含「VALUES」部分。所以:'INSERT INTO geofield(field)SELECT什麼「。 – jcaron
此外,指定實際的錯誤或行爲,你得到的肯定是一個要求。 「它不工作」只是沒用。 – jcaron
非常感謝你!這是VALUES誰鎖定了我,我花了這麼多時間來試圖找出它:/ –