Datenbanken Macht die Top -Unternehmen und Websites in der Welt von heute , so dass für die effiziente Abfrage von großen Datenmengen . Structured Query Language wird verwendet, um Informationen aus Datenbanken abzurufen. Räumliche Informationen wie Koordinaten werden üblicherweise in Datenbanken gespeichert sind. Sie können den Eintrag in einer Datenbank, die zu einer bestimmten Position mithilfe von SQL mit ein paar Zeilen Code am nächsten kommt. Anleitung
1
Verwenden Sie die richtigen Spaltennamen aus der Datenbank in der Abfrage oder auch die Suche einen Fehler zurück. Zum Beispiel wird die folgende Abfrage eine einzelne Zeile mit den Spaltennamen aus der Tabelle mit dem Namen " mytable " zurückzukehren :
SELECT TOP 1 * FROM MyTable
Notieren Sie die Namen der Spalten, die halten . die Positionsinformationen
2
Nehmen Sie den Abstand zwischen zwei Punkten an den Positionen (X1 , Y1) und (X2, Y2) gegeben:
( (X1 - X2 ) ^ 2 + ( Y1 - Y2 )) ^ 2
der Annahme, dass die räumliche Information in der Tabelle mit dem Namen " mytable " in den Spalten mit den Namen " POSX " und " POSY " gespeichert ist , wird die folgende Abfrage die Daten, die dem Punkt mit den Koordinaten X = 10,0 , Y = 10,0 am nächsten ist :
SELECT TOP 1 * (( POSX - 10,0 ) ^ 2 + ( POSY - 10,0 )) ^ 0,5 als Entfernung von mytable
Stellen Sie die X -und Y- Werte, um die Lage des Punktes in Frage zu reflektieren.
3
Geben Sie die folgende Abfrage, wenn mehr als ein Wert gewünscht wird, die 20 zurück nächsten Zeilen in der Tabelle am nächsten zu dem Punkt, an X = 10,0 , Y = 10,0 :
SELECT * , ( ( POSX - 10,0 ) ^ 2 + ( POSY - 10,0 )) ^ 0,5 als Entfernung von mytable ORDER BY Entfernung LIMIT 20