Databaser makt de bästa företagen och webbplatser i världen idag , gör det möjligt att effektivt frågande av stora mängder data . Structured Query Language används för att återvinna information från databaser . Rumslig information, såsom koordinater vanligen lagras i databaser . Du kan hitta posten i en databas som är närmast en viss position med hjälp av SQL med några rader kod . Instruktioner
1
Använd rätt kolumnnamn från databasen i fråga eller annars sökningen returnerar ett fel . Till exempel kommer följande fråga returnera en enda rad med kolumnnamn från bordet heter " mytable " :
SELECT TOP 1 * från mytable
Notera namnen på de kolumner som håller . positionsinformation
2
Ta avståndet mellan två punkter i positionerna ( X1 , Y1 ) och ( X2 , Y2 ) ges som :
( ( X1 - X2 ) ^ 2 + ( Y1 - Y2 ) ) ^ 2 Review
Förutsatt att den rumsliga informationen lagras i tabellen heter " mytable " i kolumnerna som heter " POSX " och " POSY " , kommer följande fråga tillbaka uppgifter som är närmast den punkt på koordinaterna X = 10,0 , Y = 10,0 :
SELECT TOP 1 * , ( ( POSX - 10,0 ) ^ 2 + ( POSY - 10,0 ) ) ^ 0.5 som Avstånd från mytable
Justera X-och Y-värdena för att återspegla läget för punkten ifråga .
3
Input följande fråga om fler än ett värde är önskvärt att returnera 20 närmaste raderna i tabellen närmast den punkt vid X = 10,0 , Y = 10,0 :
SELECT * , ( ( POSX - 10,0 ) ^ 2 + ( POSY - 10,0 ) ) ^ 0,5 som Avstånd från mytable ORDER BY Avstånd LIMIT 20 Addera