Daha çox

Məhdud qutu koordinatlarından poliqon necə yaradılır (PostGIS / cartoDB)

Məhdud qutu koordinatlarından poliqon necə yaradılır (PostGIS / cartoDB)


CSV formatında cartoDB-yə köçürmək üçün bir məlumat qutusu var, burada bir hüdud qutusunun köşelerini təmsil edən iki lat / uzun koordinatı tutan bir sərhəd qutusu sütunu var.

53.113206182344,-9.15629032156; 53.119089697211,-9.141677599209

Bu məlumatı öz sütununda mətn kimi saxlamalıyam, eyni zamanda bir çoxbucaqlı əldə etmək və həndəsəsini the_geom kimi saxlamaq istəyirəm. Çoxbucaqlı həndəsənin SQL yeniləməsi vasitəsilə idxaldan sonra yaradılacağını düşünürəm ... ancaq buna necə yanaşacağımıza dair rəhbərliyə ehtiyacım var.


Məncə ən asan marşrutdan istifadə etmək olardıST_MakeEnvelope(sənədlər) mətninizin əsas təhlilini etdikdən sonra. CartoDB-nin funksiyalar yaratmağınıza imkan verəcəyinə və ya verməyəcəyinə əmin deyiləm, amma bunun üçün biraz daha edərdim:

FUNKSİYANI YARATIN VƏ DƏYİŞDİN parse_box (mətn) həndəsəni $$ İLƏ QAYDIRIR (SEÇİN regexp_split_to_array ($ 1, '[^  d .-] +') AS val) SEÇİN ST_MakeEnvelope (val [1] :: float, val [2 ] :: float, val [3] :: float, val [4] :: float) FROM split; $$ DİL SQL;

Daha sonra:

My_table SET yeniləmə geom = parse_box (box);