ต่อไปนี้เป็นพื้นที่ของรูปหลายเหลี่ยมในหน่วยสี่เหลี่ยมจัตุรัส:
SELECT ST_Area(ST_GeomFromText('POLYGON((871325.790874952 6105405.3261047,871418.748307692 6105359.72944624,871346.22022442 6105215.141258,871254.85408906 6105261.72007212,871325.790874952 6105405.3261047))',4326)) As sqm;
ผลลัพธ์: 16586.2319335938
ฉันจะหาพื้นที่เป็นตารางเมตรได้อย่างไร ฉันพยายามต่อไปนี้:
SELECT ST_Area(ST_Transform(ST_GeomFromText('POLYGON((871325.790874952 6105405.3261047,871418.748307692 6105359.72944624,871346.22022442 6105215.141258,871254.85408906 6105261.72007212,871325.790874952 6105405.3261047))',4326)),31467) As sqm;
แต่ดูเหมือนว่า ST_Transform จะไม่ทำงาน ฉันได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:
ERROR: function st_transform(geometry) does not exist
LINE 1: SELECT ST_Area(ST_Transform(ST_GeomFromText('POLYGON((871325...
^
HINT: No function matches the given name and argument types. You might need to add explicit type casts.
********** Error **********
ERROR: function st_transform(geometry) does not exist
SQL Status:42883
Hint:No function matches the given name and argument types. You might need to add explicit type casts.
การสนับสนุนที่ขาดหายไปของ Proj ไม่น่าจะเป็นปัญหาด้วย SELECT PostGIS_full_version () ฉันได้รับแล้ว
"POSTGIS="1.5.3" GEOS="3.3.3-CAPI-1.7.4" PROJ="Rel. 4.8.0, 6 March 2012" LIBXML="2.8.0" USE_STATS"
SELECT ST_AREA(ST_Transform(ST_GeomFromText('POLYGON((871325.790874952 6105405.3261047,871418.748307692 6105359.72944624,871346.22022442 6105215.141258,871254.85408906 6105261.72007212,871325.790874952 6105405.3261047))',900913),31467)) As sqm;