Автор Тема: Расстояние между двумя Zip  (Прочитано 3954 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн kiruxa

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 209
  • +0/-0
  • 0
    • Просмотр профиля
    • http://autoxloo.com
Расстояние между двумя Zip
« : 21 Ноября 2005, 11:56:03 »
Добрый день,

Появилась задачка:

есть база данных MySQL с обьектами в Штатах, и указан ZIP code каждого обьекта,

надо найти все обьекты на расстоянии 25-100 миль (по выбору) от указаного ЗИП кода в базе

Кто-нибудь сталкивался с таким делами для США? ищу скрипты, а они все очень платные :(

Спасибо
Не бывает так чтоб никто нигде никак ничем :)
 Изготовление сайтов в Днепропетровске. Раскрутка, поддержка

Оффлайн hanslinger

  • H2Oer
  • Ветеран
  • *****
  • Сообщений: 1148
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.orava.ru
Расстояние между двумя Zip
« Ответ #1 : 21 Ноября 2005, 11:57:41 »
Хех.
Храни X, Y для каждого штата, и вычисляй расстояние как SQRT(SQR(X)+SQR(Y))
=)

Оффлайн kiruxa

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 209
  • +0/-0
  • 0
    • Просмотр профиля
    • http://autoxloo.com
Расстояние между двумя Zip
« Ответ #2 : 21 Ноября 2005, 12:01:26 »
не пройдет :(

если бы все так просто...
нашел базу по зипам но, как у них там все считаеться незнаю :(
Не бывает так чтоб никто нигде никак ничем :)
 Изготовление сайтов в Днепропетровске. Раскрутка, поддержка

Оффлайн hanslinger

  • H2Oer
  • Ветеран
  • *****
  • Сообщений: 1148
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.orava.ru
Расстояние между двумя Zip
« Ответ #3 : 21 Ноября 2005, 12:09:42 »
В каком виде эта база? Без информации о координатах ничего не посчитаешь.

Оффлайн kiruxa

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 209
  • +0/-0
  • 0
    • Просмотр профиля
    • http://autoxloo.com
Расстояние между двумя Zip
« Ответ #4 : 21 Ноября 2005, 12:52:15 »
Вот чтото типа этого
[PHP] CREATE TABLE zip_code (
  zip_code int(10) unsigned NOT NULL default \'0\',
  lattitude float NOT NULL default \'0\',
  longitude float NOT NULL default \'0\',
  city varchar(25) NOT NULL default \'\',
  state_prefix char(2) NOT NULL default \'\',
  zip_class varchar(20) NOT NULL default \'\',
  PRIMARY KEY  (zip_code)
) TYPE=MyISAM;

INSERT INTO zip_code VALUES (501, 40.9223, -72.6371, \'HOLTSVILLE\', \'NY\', \'UNIQUE\');

INSERT INTO zip_code VALUES (601, 18.1653, -66.7226, \'ADJUNTAS\', \'PR\', \'STANDARD\');
Не бывает так чтоб никто нигде никак ничем :)
 Изготовление сайтов в Днепропетровске. Раскрутка, поддержка

Оффлайн hanslinger

  • H2Oer
  • Ветеран
  • *****
  • Сообщений: 1148
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.orava.ru
Расстояние между двумя Zip
« Ответ #5 : 21 Ноября 2005, 13:21:26 »
lattitude, longitude - то, что вам нужно.
Осталось только перевести это все в километры :) Для каждой широты свое соотношение градус/км, и его нужно вычислять. Времени эти все операции займут уйму. Возможно, следует подумать о целесообразности.

Оффлайн kiruxa

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 209
  • +0/-0
  • 0
    • Просмотр профиля
    • http://autoxloo.com
Расстояние между двумя Zip
« Ответ #6 : 21 Ноября 2005, 16:27:12 »
Уже подумал, сделал, теперь тестирую :) вроде работает пока.

Пока платят надо делать :)

Спасибо за совет
Не бывает так чтоб никто нигде никак ничем :)
 Изготовление сайтов в Днепропетровске. Раскрутка, поддержка

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28