1. ホーム
  2. sql

[解決済み] 全世界の住所に共通する住所データベースはありますか?[クローズド]

2022-06-29 16:44:10

質問

私はプログラマーで、世界のストリートアドレス構造をデータベースに格納するための実用的なアプローチを必要としています。では、街角の住所を保存するための最適かつ一般的なデータベース設計はどれでしょうか?それは、使用するのが簡単で、クエリが速く、世界のすべての住所を保存するために動的であるべきです。

どのように解決するのですか?

標準的なフィールドのセットで、多くの異なる国の住所を表現することが可能です。名前または番号が付けられた建物が位置する、名前の付いたアクセス ルート (大通り) の基本的な考え方は、時々中国を除いて、かなり標準的なものです。その他に、一般にローカリティと呼ばれる居住地(市町村)の名称、地域の名称、英数字の郵便番号などがほぼ共通している。郵便番号は、郵便番号とも呼ばれ、国によっては純粋な数字のみであることに注意してください。本当に一般的なものにしたいのであれば、多くのフィールドが必要になります。

万国郵便連合(UPU)は、多くの国の住所データを 標準フォーマット . UPU のフォーマットは、国全体のすべての住所を (利用可能なフィールドの精度に至るまで) 保持しており、したがってリレーショナルであることに注意しましょう。顧客の住所を保存する場合、すべての住所のごく一部しか保存されないので、 すべてのフィールドを含む単一のテーブル (またはフラットフォーマット) を使用して、 1行に1つの住所を保存するのがよいでしょう。

住所を保存するための合理的な形式は、次のようになります。

  • アドレス行1~4
  • 所在地
  • 地域
  • 郵便番号 (または郵便番号)
  • 国名

住所録1~4行目には、以下のような構成要素を入れることができます。

  • 建物
  • サブビルディング
  • 構内番号(家屋番号)
  • 前提範囲
  • 周辺道路
  • サブサラブレッド
  • ダブルディペンデントロカリティ
  • サブロカリティ

多くの場合、住所は3行しか使用されませんが、これでは不十分なことがよくあります。もちろん、正式な形式ですべての住所を表すためにもっと多くの行を必要とすることは可能ですが、行の区切りとして常にカンマを使用できるため、情報を取得することは可能です。

通常、データの分析は、地域、地方、郵便番号、国ごとに行われ、これらの要素は、ユーザーがデータを入力する際にかなり理解しやすくなっています。このため、これらの要素は別のフィールドとして保存する必要があります。しかし、ユーザーに郵便番号や地域の入力を強制しないようにしましょう。

地域性は、特に地図上の地域性と郵便上の地域性の区別が不明確な場合があります。郵便局所在地は、郵便局によって判断されるもので、時には近くの大きな町であることもあります。しかし、郵便番号は通常、問題や矛盾を解決し、公式の郵便区域が使用されていなくても、正しい配達を可能にします。