ฉันกำลังมองหาฟังก์ชั่นที่จะละลายขอบเขตการแชร์ระหว่างคุณสมบัติรูปหลายเหลี่ยมในตาราง ST_UNION () เกือบจะทำในสิ่งที่ฉันกำลังมองหา แต่มันก็สร้างรูปหลายเหลี่ยมจากรูปหลายเหลี่ยมทั้งหมดในเลเยอร์โดยไม่คำนึงว่าพวกเขาแบ่งปันขอบเขตทั่วไปหรือไม่ ฉันควรละลายขอบเขตระหว่างรูปหลายเหลี่ยมที่สัมผัสกันเท่านั้น ฉันคิดว่าควรมีวิธีใช้ ST_TOUCHES () แต่แล้วความต้องการฟังก์ชั่นการละลายดูเหมือนเป็นเรื่องธรรมดาที่ฉันจะแปลกใจหากไม่มีฟังก์ชันในตัวที่จะทำให้บรรลุผล
กรณีการใช้งานมีลักษณะดังนี้: ฉันดาวน์โหลดข้อมูล Corine Landcover สำหรับประเทศยุโรปขนาดใหญ่และฉันต้องการที่จะละลายขอบเขตระหว่างชนิดของป่าต่าง ๆ (ประมาณ 75,000 รูปหลายเหลี่ยมในหนึ่งตาราง) ฉันลอง ST_UNION แล้ว แต่มันทำให้ฉันมีข้อผิดพลาด "หน่วยความจำไม่เพียงพอ" (30,000 รูปหลายเหลี่ยมใช้งานได้):
create table corine00 as
select st_union(the_geom) as the_geom,
sum(area_ha) as area_ha,
substr(code_00,1,2) as code_00
from clc00_c31_forests
group by substr(code_00,1,2)
หมายเหตุ: รหัสฟอเรสต์ทั้งหมดเริ่มต้นด้วย '31' และฉันใช้ PostGIS 1.4 รุ่น GEOS: 3.2.0-CAPI-1.6.0