i

Exkurs - Nachbarorte

Hier noch einmal das Ergebnis des vorherigen Vergleichs von Wohnort und Kaufort:

Ergebnis Wohnortabfrage

Wer in der Nähe von Germersheim wohnt, hat es sicherlich gemerkt - für die anderen ein kurzer Blick auf die Karte:

Germersheim mit Nachbarorten[1]

Die Kauforte von Herrn Michael Westphal liegen also wohl doch in der Nähe seines Wohnortes. Wenn du es dir einmal überlegst, dann ist das sicherlich bei euch auch so, dass ihr nicht nur in eurem Wohnort sondern meist in der Nähe einkauft.

Wie findet man also heraus, welche Orte "in der Nähe" des Wohnortes liegen? Auch hier kann wieder eine Datenbank helfen. Vielleicht hast du SQL ja mit der Datenbank terra (siehe Kapitel 1) gelernt. Diese kann jetzt auch helfen:

SQL FensterDownload der kompletten terra-Datenbank.

SQL Fenster Probiere einmal den folgenden SQL-Befehl auf der terra-Datenbank aus:

SELECT o.Name, ROUND(6378.388 * acos(sin(meinOrt.Breite*PI()/180) * sin(o.Breite*PI()/180) + cos(meinOrt.Breite*PI()/180) * cos(o.Breite*PI()/180) * cos(o.Laenge*PI()/180 - meinOrt.Laenge*PI()/180)),2) AS Abstand
  FROM ort o, ort meinOrt
 WHERE meinOrt.Name = 'Germersheim'
   AND meinOrt.Landesteil = 'Rheinland-Pfalz'
   AND o.LNR = meinOrt.LNR
   AND o.Landesteil = 'Rheinland-Pfalz'
   AND o.Breite IS NOT NULL
   AND o.Laenge IS NOT NULL
 ORDER BY Abstand

Der Befehl sieht komplizierter aus, als er ist. Hier ein paar Hinweise, ohne dass du dies hier vertieft verstehen musst: Hilfe

Schema der terra-DBSchema der kompletten terra-Datenbank
  • Die Tabelle ort in Zeile [2] wird doppelt benötigt, daher zwei sog. Aliasnamen o und meinOrt. Da keine weiteren Join-Bedingungen existieren, wird ein Cross-Join ("jede Zeile mit jeder") gebildet (sehr aufwändig).
  • Der Ort meinOrt wird durch Bedingungen in Zeile [3] und [4] an "Germersheim" gebunden.
  • Im Ort o werden durch Zeile [6] alle Orte in Rheinland-Pfalz betrachtet. Das schränkt den Cross-Join auf ein erträgliches Maß ein. Damit wird nun jeder Ort o mit dem Ort Germersheim in meinOrt verglichen.
  • Zeile [1] beinhaltet die Formel zur Abstandsberechnung zwischen Ort o und meinOrt.
  • Abschließend sortiert die Zeile [9] noch nach dem Abstand - nah an Germersheim liegende Orte stehen also oben.
  • Nachbarorte von Germersheim, Ergebnis der Abfrage in terra

    Vielleicht suchst du auch einmal die Nachbarorte deines Wohnortes?

    Aber Achtung: Die Abfrage ist für das Datenbanksystem sehr aufwändig. Es kann sein, dass sie zu lange dauert.

    Mit der terra-Datenbank haben wir eine dritte Datenbank für unsere Auswertung benutzt.
    Du siehst, je mehr Daten man verknüpfen kann, desto mehr und neue Informationen lassen sich aus der Kombination der Datenbanken gewinnen.

Quellen

Suche

v
3.5.7
dev.inf-schule.de/datenbanksysteme/bigdata/exkurs_nachbarorte
dev.inf-schule.de/3.5.7
dev.inf-schule.de/@/page/KPRQSI6a59OJzh47

Rückmeldung geben