Ergebnis 1 bis 3 von 3

Thema: Hilfe: Wieviele Punkte liegen in...

  1. #1
    lars ist offline Neuer Benutzer
    Registriert seit
    28.12.2010
    Beiträge
    4

    Standard Hilfe: Wieviele Punkte liegen in...

    Hallo, habe meine Probleme mit einer der klassischsten Abfragen.

    Ich habe die Tabelle 1 mit Polygonen und die Tabelle 2 mit Punkten . Nun möchte ich alle Polygone, die einen Punkt enthalten und zudem die Anzahl der enthaltenen Punkte.

    Mit der folgenden Abfrage bekomme ich auch ein Ergebnis:

    select a.the_geom, count(*) as anzahl
    from tabelle1 as a, tabelle 2 as b
    where a.the_geom ~ b.the_geom
    group by a.the_geom
    order by anzahl asc;

    Mein Problem: Mit count(*) erhalte ich (so denke ich), die Zahl der Punkte, die innerhalb eines Polygons liegen. Bilde ich allerdings die Summe, komme ich auf mehr Punkte (22761), als in der Ausgangsdatei sind (16322). Mit der Funktion 'within' in der where-Bedingung habe ich das gleiche Problem.Wenn ich mir beide Layer in QGIS übereinanderlege und mal einige Polygone durchzähle, stimmt das auch nicht.

    Muss ich eine andere Aggregatfunktion als count(*) nutzen? Habe allerdings auch schon getestet, in der Tabelle mit den Punkten eine neue Spalte 'zaehler' anzulegen, die eine '1' enthält. Die habe ich dann mit "sum(zaehler)" in die Sytax eingebaut, ohne dass dies zu einem anderen Ergebnis geführt hätte.

    Kann mir jemand nen Tipp geben, woran es liegt?

    Vielen dank.

  2. #2
    Gisman ist offline Erfahrener Benutzer
    Registriert seit
    20.01.2006
    Ort
    Pfalz
    Beiträge
    794

    Standard

    Überschneiden sich Polygone? Liegen Punkte auf Grenzen und gehören so eventuell zu mehreren Polygonen?

    Gruß Uwe
    Have a lot of fun!

  3. #3
    lars ist offline Neuer Benutzer
    Registriert seit
    28.12.2010
    Beiträge
    4

    Standard

    Gute Fragen. Ich glaube mittlerweile, bei den Polygonen liegt der Hase im Pfeffer. Es handelt sich dabei um die Zellen eines Vektor-Grid (ETRS89_LAEA SRID 3035), dass ich in QGIS erstellt habe.
    Zuerst habe ich meine Punkte in ein Grid mit einer Zellenweite von 1km gepackt, was mit der Funktion 'within' auch zum richtigen Ergebnis geführt hat.
    Danach wollte ich das gleiche mit einem Grid tun, dass lediglich eine Zellenweite von 100m hat. Da sich das 100m Raster nahtlos in das 1km-Raster einfügt, habe ich das 100m-Raster erstmal mit den Ergebnissen der Analyse des 1km-Raster verschnitten. Denn nur wenn bereits in der 1km-Zelle ein Punkt liegt, kommen auch die untergeordneten 100m-Zellen darin bei der Analyse in Frage.

    Hier die Abfrage:

    Create View grid_100m_all
    select b. the_geom
    from grid_100m as b, ergebnis_grid_1km as a
    where st_intersects (a.the_geom, b.the_geom);

    Die Funktion 'Intersects' war hier wohl falsch. Wenn ich`s wie in der Abfrage oben beschrieben über den räumlichen Index und '~' mache, und das Ergebnis dann mit meinen Punkten verschneide, kommt ein plausibles Ergebnis raus. Vielleicht sollte ich nochmal genau nachlesen, was 'Intersects' genau anstellt.

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 29.06.2011, 08:10
  2. Wieviele Benutzer können gleichzeitig dieselbe Login-Rolle benutzen ?
    Von newposter im Forum Benutzer- & Rechteverwaltung
    Antworten: 2
    Letzter Beitrag: 14.03.2011, 00:18
  3. Punkte zu Linien zusammenfassen
    Von TorstenA im Forum PostGIS
    Antworten: 4
    Letzter Beitrag: 16.04.2008, 21:20
  4. Wieviele datenbanken auf einem Server?
    Von CenText im Forum Allgemeines
    Antworten: 25
    Letzter Beitrag: 02.04.2008, 08:58
  5. Punkte im Polygon
    Von superlocke im Forum PostGIS
    Antworten: 4
    Letzter Beitrag: 19.10.2007, 09:11

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Links: Tobias Bauer - IT- und Funkdienstleistungen   -   Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen   -   Funkforum