select sum(st_area(way)) from planet_osm_polygons where landuse=‘forest’ or natural=‘wood’
allerdings bekommst Du damit, bei Verwendung des GEOMETRY-Datentyps, die Flaeche in den Einheiten der jeweiligen Projektion. Um eine korrekte Berechnung der Flaeche auf der Kugeloberflaeche zu haben, koennte man die interessierenden Polygone in einen GEOGRAPHY-Datentyp umwandeln; hier ergibt st_area dann immer eine korrekte Flaeche in Quadratmetern.
Ich hab grad damit rumgespielt und bin gescheitert.
Funktioniert auch erst ab PostGIS 1.5, oder? Zumindest st_area(geography(way)) haut vorher nicht hin, weil geography() noch nicht erfunden wurde…
Für Traditionalisten mit Mercator-Daten in der DB bleibt als Quick&Dirty-Lösung für Kleinflächen die Multiplikation mit cos(Breitengrad)*cos(Breitengrad) oder das Umwandeln in irgendein SRID, das echte Meter verwendet, GK mit der jeweils passenden Zone z.B.: st_area(st_transform(way,31468))
in was für einer Einheit ist das Ergebnis? Für Europa bekomme ich
select sum(st_area(way)) from osm_polygon_view where landuse=‘forest’ or natural=‘wood’;
sum
Du siehst das ganz richtig und das ist der größte Nachteil der Windowsumgebung. Alles andere läuft ja auch dort schon sehr gut. Aber auf über 4 GB Speicher zu verzichten ist schon hart.