1

使用例: クライアント A が販売情報を要求しに来て、郵便番号を入力すると、担当者 X に誘導されます。

事実上無数の郵便番号があるため、すべての郵便番号にエージェントが割り当てられるわけではなく、郡レベルに移動し、郡の地域に移動し、最終的に州レベルで終了します。

このシナリオをモデル化するには、どのタイプの関係が最適ですか?

担当者が割り当てられた最も近い郡に郵便番号を近似できる地域を具体的に定義する必要性をなくす方法はありますか?もしそうなら、完全な地理位置情報を調べて距離比較を行って最も近い代表を見つけるか、またはおそらく、郵便番号自体を使用して距離を近似することはできますか?

明確化: この質問の本当の意図は、郡と地域の完全な関連付けテーブルを維持する必要なく、地域の近似をどのように解決するか、またはこの問題の解決策が非常に複雑であるため、手動で関係を維持するコストがそれほど高くないということですか?

4

2 に答える 2

1

Google または Yahoo API から緯度/経度を簡単に取得できます (私の最後のプロジェクトでは、Yahoo が見つけたニュージャージー州の特定の郵便番号が Google で見つからないという問題がありました)。

したがって、担当者と一緒に郵便番号ごとに緯度/経度をキャッシュする場合 (また、顧客が入力した郵便番号ごとに緯度/経度もキャッシュすることをお勧めします。そのため、毎回 Web サービスにアクセスする必要はありません)。ユーザーの郵便番号の緯度/経度を取得し、担当者ごとに距離を計算するだけです。これには、n 倍の複雑さの順序があります (n の代表に対して O(n))。

于 2010-01-11T15:46:12.807 に答える
1

少なくとも郵便番号が存在する州を含む、安価または無料の (Census.gov) 郵便番号情報を取得できます。より詳細な情報が必要な場合は、Zip to County の情報を取得することもできます。この時点で、郵便番号のある州または郡に一致する代表者を簡単に取得できます。

国勢調査局から入手できる TIGER データを使用して、空間データベースに郵便番号の境界と代表者の既知の地域を入力できます。次に、単純なクエリで、指定された郵便番号に最も近い代表者を取得できます。私はPostGISで良い経験をしており、 OracleSqlServerの両方の空間拡張を認識しています。

于 2010-01-11T15:19:50.427 に答える