Near函数使用SQL

时间:2018-06-11 09:26:04

标签: sql-server sql-server-2012

在我的表tblStore中存储一些位置纬度和经度根据商店地址我想得到一个确切的商店,以及附近的功能,意味着用户输入任何州,城市,地址或Pincode所以他们可以检查数据例如。纬度经度列为给出附近的匹配数据。 为此,我写了一个如下查询。 我的表

 StoreName  StoreAddress    City    State          Pincode    Latitude   Longitude
 ABC          LAVBHANDI    RAIPUR    CHHATTISGARH 492001    21.23976180 81.68179490
 SDF           AIRPORT     AHMEDABAD GUJARAT      380003    21.06800900 70.49738180
 QWE           GORWA       VADODARA  GUJARAT      390023    22.32212250 73.16322990
 ZXC           MUGDALLA    SURAT     GUJARAT      395007    21.14517370 72.75489680
 HUI           MAHADEVPUR  BANGALORE KARNATAKA    560048    12.99703720 77.69443030
 TSM           YASHWANTPUR BANGALORE KARNATAKA    560055    13.01079010 77.55269750
 RRS           MAHADEVPUR  BANGALORE KARNATAKA    560048    12.99633780 77.69316240
 JJK           KEMPSCORNER MUMBAI    MAHARASHTRA  400036    18.96409600 72.80603600
 LLI           PAREL       MUMBAI    MAHARASHTRA  400013    18.99463540 72.82238490
 GT            SANTACRUZ   MUMBAI    MAHARASHTRA  400099    19.09108550 72.85647240
 SSS           MALAD       MUMBAI    MAHARASHTRA  400062    19.18504160 72.83411740
 GKO           GHATKOPAR   MUMBAI    MAHARASHTRA  400086    19.09987280 72.91395000

所以我的查询应该是我像Andheri一样搜索商店地址,但我的表没有像Andheri这样的地址所以它检查DB并返回Andheri最近的位置。 我通过使用jquery获取Andheri位置我获取Andheri位置的纬度和经度并传递给DB

我的SQL查询是:

declare @Latitude  decimal(18,8)= 19.113645
declare @Longitude  decimal(18,8)= 72.86973390000003
declare @latmin decimal(18,8) = @Latitude   -0.30;
declare @latmax decimal(18,8) = @Latitude   +0.30;
declare @longmin decimal(18,8) = @Longitude -0.30;
declare @longmax decimal(18,8) = @Longitude +0.30;


  select * from tblStore
  where  Latitude  between @latmin    and  @latmax
  and Longitude between @longmin and  @longmax 
  order by Latitude desc
它显示了我在孟买的所有商店位置我只想要桑塔克鲁兹和马拉德 那么如何使用SQL查询设置谷歌位置的直径。

0 个答案:

没有答案