-- An ornithologist, wishing to study the bird population on several south -- sea islands, knows that the feeding zone of the bird species she is -- interested in is restricted to the shoreline. As part of her calculation -- of the island's carrying capacity the ornithologist requires the islands' -- perimeters. Some of the islands are so large they have several ponds on -- them. However, the shoreline of the ponds are inhabited exclusively by -- another more aggressive bird species. Therefore, the ornithologist -- requires the perimeter of the exterior ring only of the islands. -- The ID and name columns of the islands table identifies each island, -- while the land polygon column stores the island's geometry. CREATE TABLE islands (id integer, name varchar(32), land ST_Polygon); INSERT INTO islands VALUES( 1, 'hawaii', ST_PolyFromText('polygon ((42000 18000,48000 18000,48000 13000,42000 13000,42000 18000))',1000) ); -- The ST_ExteriorRing function extracts the exterior ring from each -- island polygon as a linestring. The length of the linestring is -- calculated by the ST_Length function. The linestring lengths are -- summarized by the sum function. SELECT SUM(ST_Length(ST_ExteriorRing(land))) FROM islands;