উত্তর:
টেবিলটিতে স্বয়ংক্রিয়ভাবে যোগদান আপনাকে নকল সারিগুলি সন্ধান করার অনুমতি দেবে। এর মতো কিছু কাজ করা উচিত:
DELETE t1
FROM mytable t1, mytable t2
WHERE t1.the_geom = t2.the_geom
যদি পয়েন্ট:
DELETE t1
FROM mytable t1, mytable t2
WHERE t1.x = t2.x
AND t1.y > t2.y
(পরীক্ষিত না .....)
আমি মনে করি সবচেয়ে সহজ হ'ল সদৃশটিকে কখনই প্রবেশ করতে দেওয়া না। জ্যামিতি ক্ষেত্রে একটি অনন্য বাধা যুক্ত করুন। আমি জানি না যে এটি স্পাটিএলাইটে কীভাবে কাজ করবে তবে পোস্টগ্রিসে বাঁধাটি বাউন্ডিং বাক্সগুলির সাথে তুলনা করবে যা পয়েন্টগুলির ক্ষেত্রে পছন্দসই প্রভাবটি ডাইভ করবে।
যদি কোনও ডুপ্লিকেট অপসারণ করে তবে আপনি যদি কোনও প্রশ্ন তৈরি করতে পারেন তবে আইডি দিয়ে সমস্ত সারি মুছে ফেলা হবে যা পৃথক জ্যামিতি নির্বাচন করে এমন একটি সাবকোয়ারিতে পাওয়া যায় না। এখানে একই, পয়েন্টগুলি সহ নিরাপদ তবে অন্য ধরণের নয় কারণ কেবলমাত্র বাক্সকেই আসল জ্যামিতির সাথে তুলনা করা হবে না (যদি পোস্টগিস হিসাবে একইভাবে কাজ করা হয়)।
/ Nicklas
DELETE FROM foo
WHERE pkuid NOT IN (SELECT min(pkuid) --or max(pkuid)
FROM foo
GROUP BY geometry)
( এখানে ডেনিস ভালিভের উত্তর থেকে নেওয়া হয়েছে: /programming/3777633/delete-d નકલ----ont-delet- সব- সদৃশ )
আমার ক্ষেত্রে সর্বাধিক দক্ষ উপায় হ'ল স্তর থেকে স্থানিক সূচক ব্যবহার করা। এই ক্যোয়ারির সাহায্যে প্রতিটি ওভারল্যাপিং বৈশিষ্ট্যের জন্য আমি কেবল 1 জ্যামিতি রাখি। আমি লিনস্ট্রিংয়ে রূপান্তরিত একটি টিআইএন দিয়ে পরীক্ষা করেছি।
delete from tin_line_sp where ogc_fid not in (
select min(s1.rowid) as id_to_keep from
idx_tin_line_sp_geometry as s1,
idx_tin_line_sp_geometry as s2
where
s1.xmin = s2.xmin and
s1.xmax = s2.xmax and
s1.ymin = s2.ymin and
s1.ymax = s2.ymax
group by s1.xmin,s1.xmax,s1.ymin,s1.ymax)
সঠিকভাবে স্থানিক সূচকগুলি বোঝার জন্য, স্থানিক সূচককে বহুভুতে রূপান্তর করতে এখানে দুটি প্রশ্ন।
create table tin_line_sp_representation as
select PolygonFromText('POLYGON(('||
xmin || ' ' || ymin || ',' ||
xmax || ' ' || ymin || ',' ||
xmax || ' ' || ymax || ',' ||
xmin || ' ' || ymax || ',' ||
xmin || ' ' || ymin || '))',25832) as geometry
from idx_tin_line_sp_geometry;
সাফল্যের সাথে, আপনার প্রিয় দর্শকের মধ্যে কল্পনা করতে সক্ষম করতে জ্যামিতি কলামটি পুনরুদ্ধার করুন:
select RecoverGeometryColumn( 'tin_line_sp_representation','geometry', 25832 , 'POLYGON', 2 )