আপনি মাঠে গ্রুপে অন্তর্ভুক্ত করেছেন তার কারণেই সম্ভবত আপনার সমস্যা।
ST_UNION একটি সামগ্রিক ফাংশন, এর অর্থ এটি যে আপনি GROUPপরামিতি হিসাবে নির্দিষ্ট করেছেন তার ভিত্তিতে এটি দ্রবীভূত হচ্ছে ।
আপনি যা প্রবেশ করেছেন তা এখানে:
SELECT c.fid, ST_Union(c.boundaryshape) FROM c Group by c.fid,c.boundaryshape;
এই অনুসারে, আপনি নিজের দ্বারা গোষ্ঠী তৈরি করছেন fidযা সম্ভবত একটি অনন্য শনাক্তকারী এবং এছাড়াও দ্বারা boundaryshapeজ্যামিতি। এটির সাথে সমস্যাটি হ'ল এটির সম্ভাবনা খুব কম নয় যে বৈশিষ্ট্যগুলি একটি অনন্য আইডি ভাগ করে নিচ্ছে, একই রকম জ্যামিতি থাকবে। অতএব, ST_Unionসম্ভবত নিম্নলিখিতগুলির মতো কিছু শেষ হতে চলেছে:
Input:
fid boundaryshape
1 11
1 12
1 11
1 13
2 12
2 13
2 12
3 5
3 2
3 4
Output:
fid boundaryshape
1 (11 + 11)
1 12
1 13
2 (12 + 12)
2 13
3 2
3 4
3 5
এই ক্ষেত্রে, আপনার কেবলমাত্র আপনার অনন্য শনাক্তকারীর উপর ভিত্তি করে দ্রবীভূত হওয়া উচিত, যদি না আপনি বাস্তবে একই সাথে বেশ কয়েকটি সদৃশ জ্যামিতি না রেখে থাকেন fid, যা আপনি পরিত্রাণের চেষ্টা করছেন। এমনকি সেই পরিস্থিতিতে যদিও আপনার কেবলমাত্র উপর ভিত্তি করে গ্রুপ করা উচিত fid, এবং ইউনিয়ন জ্যামিতির সদৃশটির যত্ন নেবে।
আমি নিম্নলিখিত চেষ্টা করব:
SELECT c.fid, ST_Union(c.boundaryshape) FROM c GROUP BY c.fid;
এটি আপনাকে সাধারণ বৈশিষ্ট্যের উপর ভিত্তি করে সমস্ত বৈশিষ্ট্য দ্রবীভূত করার কাঙ্ক্ষিত ফল দেয় fid।
এখানে পোস্টজিআইএস সাইটে সহায়তা দস্তাবেজটি দেওয়া হয়েছে: ST_Uionion
নীচে তালিকাভুক্ত প্রথম উদাহরণটি দেখুন এবং লক্ষ্য করুন যে এটি বিভাগে জ্যামিতিটিকে বিভাগে অন্তর্ভুক্ত করে না।