मैं पूरे बहुभुज को ज्यामिति प्रकार के रूप में संग्रहीत करने का सुझाव दूंगा। यदि/जब आपको इसे भूगोल में "रूपांतरित" करने की आवश्यकता होती है, तो भूगोल विधियों STNumPoints और STPointN का उपयोग करके अलग-अलग बिंदुओं को क्रम से निकालें और उन्हें उपयुक्त के रूप में परिवर्तित करें।
रूपांतरण की बात करें तो अब आपका डेटा किस प्रारूप में है? मुझे वहां अव्यक्त/लंबी जानकारी नहीं दिखाई दे रही है, लेकिन शायद मुझे कुछ याद आ रहा है।
संपादित करें:यहाँ एक समाधान है जिसे मैंने अभी कोडित किया है।
use tempdb;
create table tally (i int not null);
with
a as (select 1 as [i] union select 0),
b as (select 1 as [i] from a as [a1] cross join a as [a2]),
c as (select 1 as [i] from b as [a1] cross join b as [a2]),
d as (select 1 as [i] from c as [a1] cross join c as [a2]),
e as (select 1 as [i] from d as [a1] cross join d as [a2])
insert into tally
select row_number() over (order by i) from e
create unique clustered index [CI_Tally] on tally (i)
create table ace (g geometry)
insert into ace (g)
values (geometry::STGeomFromText(<<your polygon string here>>, 0));
select i, g.STPointN(t.i), g.STPointN(t.i).STAsText()
from ace as [a]
cross join tally as [t]
where t.i <= g.STNumPoints()