CREATE FUNCTION dbo.ComputeDistance ( @Lat1 Numeric(6,4), @Lon1 Numeric(7,4), @Lat2 Numeric(6,4), @Lon2 Numeric(7,4) ) RETURNS DECIMAL(6,2) AS BEGIN IF @LAT1 IS NULL OR @LAT2 IS NULL OR @LON1 IS NULL OR @LON2 IS NULL OR @LAT1=0 OR @LAT2=0 OR @LON1=0 OR @LON2=0 RETURN(9999) IF @LAT1 = @LAT2 AND @LON1 = @LON2 RETURN(0) RETURN 3958.75 * ACos(Sin(@Lat1/57.2958) * Sin(@Lat2/57.2958) + Cos(@Lat1/57.2958) * Cos(@Lat2/57.2958) * Cos(@Lon2/57.2958 - @Lon1/57.2958)) END