[Pgsql-ayuda] Consulta sobre velocidad

Antonio Castro acastro@ciberdroide.com
Sat, 1 Feb 2003 09:16:03 +0100 (CET)


On Fri, 31 Jan 2003, Alvaro Herrera wrote:

> On Sat, Jan 04, 2003 at 09:35:15AM +0100, Antonio Castro wrote:
> > On Fri, 3 Jan 2003, Alvaro Herrera wrote:
> >=20
> > > On Fri, Jan 03, 2003 at 08:15:51PM +0100, Antonio Castro wrote:
> > > > On Fri, 3 Jan 2003, Jos=E9 Luis DALLAPICCOLA wrote:
> > > >=20
> > > > > La consulta: En cuanto a la velocidad posterior de uni=F3n entre =
las dos
> > > > > tablas: =BFqu=E9 tipo de dato conviene?
> > > > > Las opciones: varchar(1), char(1), smallint, numeric(1)
> > >=20
> > > Tienes otra opcion, "char" (incluyendo las comillas).
> >=20
> > Esa opci=F3n "char" equivale a la ya sugerida como char(1).
>=20
> No.

Quiz=E1s tengas raz=F3n pero no lo creo.

Acabo de mirarlo y en el manual de Postgres viene lo siguiente:

=09char=09=091 byte
=09char(n)=09=094+n bytes
=09varchar(n)=094+n bytes

Esto parece darte la raz=F3n pero me cuesta creermelo y mira lo que
pone en el manual de Momjiam.

CHAR(length) is similar to VARCHAR(), except it always stores exactly=20
length characters. This type pads the value with trailing spaces to=20
achieve the specified length, and provides slightly faster access than=20
TEXT or VARCHAR().

Por lo tanto seg=FAn esto char y char(1) si son lo mismo.

Por otra parte no parecer tener mucho sentido implementar char(n) y=20
varchar(n) de forma que ambos ocupen siempre lo mismo.=20

Por lo tanto creo que tu error viene de lo que en mi opini=F3n es un=20
error en la documentaci=F3n de Postgres y deber=EDa decir:

=09char=09=091 byte
=09char(n)=09=09n bytes
=09varchar(n)=094+n bytes

Conviene aclararlo porque un error como este puede estar influyendo en
el dise=F1o de BD.=20


Un saludo

Antonio Castro

+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--=
+
        /\     /\      Ciberdroide Inform=E1tica (Tienda de Linux)
          \\W//            <<< http://www.ciberdroide.com >>>
=09 _|0 0|_                                                   =20
+-oOOO--(___o___)--OOOo----------------------------------------------------=
+=20
|  . . . . U U . . . . Antonio Castro Snurmacher  acastro@ciberdroide.com  =
| =20
|  . . . . . . . . . .                                                     =
|=20
+()()()----------()()()----------------------------------------------------=
+
| *** 1.700 sitios clasificados por temas sobre Linux en ***Donde_Linux*** =
|
| <<< http://www.ciberdroide.com/misc/donde/dondelinux.html >>>            =
|
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--=
+