>So, if I am at latHere and lonHere (consider lat and lon to be stored in degrees > > > >select .... where > lat between latHere - 1/111 * 20 and latHere + 1/111 * 20 > and lon between lonHere - 1/111 * 20 and lonHere + 1/111 * 20 > and (calculatedDistance < 20 ) >>
>RangeAdd = 2/111 > ><pre> >select .... where > lat between latHere - 1/111 * 20 - RangeAdd and latHere + 1/111 * 20 +RangeAdd > and lon between lonHere - 1/111 * 20 - RangeAdd and lonHere + 1/111 * 20 + RangeAdd > and (calculatedDistance < 20 ) > > >Thanks, when I try this:
declare @CenterLat float=47.7795 declare @CenterLon float=-65.7191 declare @SearchDistance float=10000 select * from test where latitude between @CenterLat - (1/111 * @SearchDistance) and @CenterLat + (1/111 * @SearchDistance) and longitude between @CenterLon - (1/111 * @SearchDistance) and @CenterLon + (1/111 * @SearchDistance)It only returns one record however those two records in my table are only 12 to 16 km away. I have attached the table image.