将浮动纬度和经度转换为地理位置

Ser*_*lov 8 sql-server-2008

如何将浮动纬度和经度值转换为地理类型值?我有@lat@lon变量.

And*_*son 18

用案例陈述:

CASE
    WHEN ((@Latitude IS NOT NULL) AND (@Longitude IS NOT NULL))
    THEN geography::Point(@Latitude, @Longitude, 4326)
    ELSE NULL           
END
Run Code Online (Sandbox Code Playgroud)

或者使用if的变体:

 DECLARE @Location geography = NULL
 IF (@Latitude IS NOT NULL AND @Longitude IS NOT NULL)
    SET @Location = geography::Point(@Latitude, @Longitude, 4326);
Run Code Online (Sandbox Code Playgroud)