В этом вам поможет множество геопространственных структур. В геопространственном мире почтовый индекс - это просто «многоугольник», который представляет собой просто область на карте, которая определяет четкие границы (а не многоугольник в математическом смысле). Например, в пространственной версии SQL 2008 вы можете создать новый многоугольник на основе своего исходного многоугольника. Таким образом, вы можете динамически создавать многоугольник, который является вашим почтовым индексом, расширенным на определенное расстояние в каждой точке. Принимает во внимание причудливую форму почтового индекса. С адресом это легко, потому что вы просто создаете многоугольник, который представляет собой круг вокруг одной точки. Затем вы можете выполнять запросы, чтобы получить все точки в новом многоугольнике, который вы создали любым из методов.
Многие из этих сайтов в основном просто делают это. Они дают вам все очки в пределах 5-мильного расширенного многоугольника, а затем, возможно, 10-мильного расширенного многоугольника, и так далее, и так далее. Они на самом деле не рассчитывают расстояние. Большинство ма материалов в Интернете совсем не сложны.
Вы можете увидеть некоторые основные примеры здесь , чтобы получить общее представление о том, о чем я говорю.