Ho una tabella di poligoni (gruppi di blocchi di censimento) in postgres. Voglio taggare ogni gruppo di blocchi con la città (un'altra tabella poligonale) in cui risiede principalmente. È possibile? Sto pensando che dovrei essenzialmente creare qualcosa del tipo:
select b.*,t.name
from blockgroups b, towns t
where (st_area(st_intersection(b.wkb_geometry, t.wkb_geometry))/st_area(b.wkb_geometry)) > .5
ma questa query sta impiegando un'eternità (ho circa 5.000 gruppi di blocchi e 375 città ...). Qualche suggerimento su come far funzionare questa query o se è errata o più veloce se è corretta?