Latitude列とLongitude列(両方ともfloat)を含むテーブルがあり、現在、パラメーターとしてポイントを取得し、それから最大500メートル離れている行を見つけるストアドプロシージャを構築しています。
where句で次のステートメントを使用していますが、機能していません。
(geometry::STGeomFromText('POINT(' + CAST(Longitude AS VARCHAR(20)) + ' ' +
CAST(Latitude AS VARCHAR(20))
+ ')', 4326).STDistance(@currentLocation) / 1000) < @radius
@currentLocation
でありgeometry
、@radius
ですfloat
。
SQL Server 2012を使用しています。where句の何が問題になっていますか?