我在数据库中有一个表,其中包含一些邮政编码及其纬度和经度,例如:
Id PostCode Latitude Longitude
1 ll29 8ht 53.2973289489746 -3.72970223426819
Run Code Online (Sandbox Code Playgroud)
该表由MVC代码优先应用程序生成,纬度和经度数据类型是真实的
我有一个存储过程,它将 searchLatitude 和 searchLongitude 作为输入,然后计算距离:
CREATE PROCEDURE [dbo].[StockistSearch]
@searchLat float = 0,
@searchLng float = 0
AS
BEGIN
SET NOCOUNT ON;
SELECT top 40
s.Id as Id,
a.Company as Company,
a.FirstName as FirstName,
a.LastName as LastName,
a.Address1 as Address1,
a.Address2 as Address2,
a.City as City,
a.ZipPostalCode as ZipPostalCode,
a.PhoneNumber as PhoneNumber,
a.FaxNumber as FaxNumber,
a.Email as Email,
s.latitude as Latitude,
s.longitude as Longitude,
( 3959 * acos( cos( radians(@searchLat) …Run Code Online (Sandbox Code Playgroud)