Databaser makt de beste bedrifter og nettsteder i verden i dag , noe som åpner for effektiv spørring av store mengder data . Structured Query Language brukes til å hente informasjon fra databaser . Romlig informasjon , for eksempel koordinatene blir ofte lagret i databaser . Du finner en oppføring i en database som er nærmest en bestemt posisjon ved hjelp av SQL med noen få linjer med kode. Instruksjoner
en
Bruk riktige kolonnenavn fra databasen i spørringen eller annet søket returnerer en feil . For eksempel vil følgende spørring returnerer en enkelt rad med kolonnenavn fra tabellen som heter " MyTable " : en
SELECT TOP 1 * fra MyTable
Merk navnene på søylene som holder . posisjonelle informasjon
2
avstanden mellom to punkter i posisjonene ( X1 , Y1 ) og ( X2 , Y2 ) gitt som : en
( ( X1 - X2 ) ^ 2 + ( Y1 - Y2 ) ) ^ 2
Forutsatt at den romlige informasjonen er lagret i tabellen som heter " MyTable " i kolonnene som heter " POSX " og " POSY " , vil følgende spørringen returnere data som er nærmest til det punktet koordinatene X = 10,0 , Y = 10,0 : en
SELECT TOP 1 * , ( ( POSX - 10,0 ) ^ 2 + ( POSY - 10,0 ) ) ^ 0,5 som Avstand fra MyTable
Juster X -og Y- verdiene for å reflektere plasseringen av punktet i spørsmålet.
3
Input følgende spørring hvis mer enn én verdi er ønskelig å returnere 20 nærmeste radene i tabellen nærmeste til det punktet X = 10,0 , Y = 10,0 :
SELECT * , ( ( POSX - 10,0 ) ^ 2 + ( POSY - 10,0 ) ) ^ 0,5 som Avstand fra MyTable ORDER BY avstand LIMIT 20