sql >> Base de Datos >  >> RDS >> Mysql

¿Cuál es el mejor tipo de columna para un código postal de Estados Unidos?

Hay algunos problemas con el almacenamiento de un código postal como un valor numérico.

  1. Los códigos postales tienen extensiones, lo que significa que pueden ser 12345-6789 . No puede almacenar un guión en un tipo de datos numérico.
  2. Hay muchos códigos postales que comienzan con un cero, si lo almacena como un int, perderá el cero inicial.
  3. No se suman/restan, etc. códigos postales ni se usan funciones numéricas con ellos.

Almacenaría un código postal como varchar(5) o varchar(10) .

Como nota al margen, no estoy seguro de por qué seleccionaría varchar(6) , ¿tiene alguna razón para seleccionar una longitud inusual cuando los códigos postales estándar son 5 o 10 con la extensión?