मेरे पास प्रशासनिक सीमाओं और उनकी ज्यामिति के साथ एक पोस्टग्रेज डेटाबेस है। उन सीमाओं में से प्रत्येक की एक पहचान संख्या है।
मैं क्या हासिल करना चाहता हूं:
पहले मैं उन सभी पंक्तियों का चयन करना चाहता हूं जो एक विशेष ज़िप कोड के साथ शुरू हो रही हैं। उदाहरण के लिए:
SELECT * FROM "post" WHERE "post"."ident" LIKE '101%'
उन सभी ज्यामिति जो निकटवर्ती हैं उन्हें विलय कर दिया जाना चाहिए और जो नहीं हैं उन्हें भी लौटाया जाना चाहिए।
मैंने उन बयानों की कोशिश की है:
यह एक मैं इस जवाब से है:
PostGIS का उपयोग करके बड़े बहुभुज बनाने के लिए बहुत सारे छोटे बहुभुजों से जुड़ना?
with t as (
select (st_dump(geom)).geom
from "post"
where "post"."ident" LIKE '593%'
) select ST_UNION(geom) from t;
लेकिन यह कथन केवल उन बहुभुजों को लौटाता है जो आसन्न हैं, लेकिन अन्य शामिल नहीं हैं
with t as (
select (st_dump(geom)).geom
from "post"
where "post"."ident" LIKE '593%'
) select ((ST_Dump(ST_UNION(geom)))) from t;
मुझे 2 पंक्तियाँ मिलती हैं, और ऐसा लगता है कि यह वही हो सकता है जो मैं चाहता हूँ, लेकिन मुझे परिणाम als ST_AsText नहीं मिल सकता है।
क्या कोई कथन है जो सभी बहुभुजों को विलय कर देता है जहां आवश्यक हो और इसे आदर्श रूप से जेजोन या पाठ के रूप में वापस कर सकते हैं?