2015-11-24 1 views
0

У меня есть таблица, в которую я вставляю координаты GPS (lat/lon) на каждую запись.SQL Server: GPS Расстояние до Cordins ИСПОЛЬЗОВАНИЕ расчетной колонки

схема таблицы, как: (Id, время, широта, долгота)

Можно вычислить расстояние двух непрерывных записей с использованием вычисляемых столбцов? Что-то, что схема выглядит следующим образом: (Id, Time, Lat, Lon, Distanceof (ID -1, ID))

Примечание: Я знаю, как рассчитать расстояние двух точек, но я не знаю, можно ли его доступ к нескольким строкам данных в вычисленном столбце.

ответ

1

нельзя непосредственно использовать значения других строк в вычисленной определении столбца, но можно создать пользовательскую функцию и использовать его:

CREATE FUNCTION dbo.CalcDistance(@prev_row_id INT, @row_id INT) 
AS 
    ... 

, а затем определить вычисленное выражение столбца в качестве dbo.CalcDistance(Id - 1, Id).

+0

Это идея. Спасибо –

1

Вы можете создать функцию Distanceof для вычисления расстояния. и вы можете выбрать:

Выберите id, time, Lat, Lon, Distanceof (Lat, Lng, radius) из таблицы. будет вычисляться для каждой строки. Но это будет timeconsuming, если вы делаете много строк

Смежные вопросы