Distance to shop long/lat
As Jimajamma pointed out, the Location module along with Views will allow you to filter by distance. I am currently using zipcodes to filter by, but one could do geocoordinates as well.

Here is a step by step article on how to achieve filtering.  Although the article is a tad old, it is still relevant and can easily be adapted for drupal 7.

http://drupal.org/node/359463