Calculate distance in miles between two coordinates

Refering to this and this:

you could do:

select shopid
      ,shopname
      ,shoppostcode
      ,orderid
      ,customerpostcode
      ,acos(sin(s.lat)
           *sin(radians(o.lat))
           +cos(radians(s.lat))
           *cos(radians(o.lat))
           *cos(radians(o.long)
               -radians(s.long)
               )
           )
           *3963.1676
        as orderdistance
  from shop as s
       inner join orders as o
               on o.shopid=s.shopid
 where o.Orderdate>='2015-12-01 00:00:00'
   and o.Orderdate<'2016-01-01 00:00:00'
   and o.status in (2,3,11,12)
;
1 Like