Question

Je suis en train d'écrire une application web, qui nous précise, si le format que d'autres pays utilisent des codes postaux ne sont pas importants. J'ai une liste de codes postaux nous que je suis en train de charger dans une table de base de données qui inclut le

  • 5 chiffres nous code
  • latitude
  • longitude
  • code de classification USPS
  • code d'état
  • ville

le code est la clé primaire comme il est ce que je vais Interrogation contre. i commencé à utiliser un support int 5 mais qui tronque les codes postaux qui ont des zéros à gauche.

i pensé à utiliser un char5 mais je suis préoccupé par la baisse de performance de l'indexation contre une variable char.

Ma question est quel est le meilleur type de données MySQL pour stocker les codes postaux comme?

Note: Je l'ai vu dans plusieurs autres questions relatives aux codes postaux. Je ne suis intéressé par US 5 codes postaux chiffres. Il n'y a donc pas besoin de prendre d'autres pays formats de code postal en considération.

Était-ce utile?

La solution

char (5) est la bonne façon d'aller. l'indexation des chaînes est assez rapide, en particulier quand il est un petit ensemble de données.

Vous avez raison que vous ne devez jamais utiliser un entier pour un code postal, car il est vraiment pas de données numériques.

Modifier pour ajouter: Découvrez ce pour de bonnes raisons pour lesquelles vous ne pas utiliser des chiffres pour les données non numériquement importante: Est-ce une bonne idée d'utiliser une colonne entière pour US stocker les codes postaux dans une base de données?

Autres conseils

aller avec votre support INT (5) ZEROFILL, il faut ajouter les zéros pour vous. Pas besoin d'avoir un impact de l'indice et la performance sur une question de mise en forme.

S'il le fait Char (6), alors il peut gérer les codes postaux canadiens.

Quand vous considérez qu'il ya un maximum de 100 000 à 5 chiffres code postal et le peu d'espace qu'il prendrait même si vous avez fait la mémoire résidente de table entière, il n'y a aucune raison de ne pas.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top