| From: | Juan Manuel Acuña Barrera <gps1mx(at)gmail(dot)com> | 
|---|---|
| To: | Lista PostgreSQL en Español <pgsql-es-ayuda(at)postgresql(dot)org> | 
| Subject: | Re: excepcion en SELECT * | 
| Date: | 2011-05-11 15:37:03 | 
| Message-ID: | 25EF891C-78C1-41AE-A25C-61574189F792@gmail.com | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-es-ayuda | 
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
El 10/05/2011, a las 19:04, Álvaro Hernández Tortosa escribió:
> Tue, May 10, 2011 at 12:44:55PM -0500, Juan Manuel Acuña Barrera escribió:
> 
>>> 	Si tu información, por registro, tiene 80 vectores (atributos),
>>> entonces es perfectamente lícito que haya 80 columnas. Si por ejemplo,
>>> se quieren registrar coordenadas en un espacio de 80 dimensiones (OK,
>>> concedo que no es el mejor ejemplo posible), entonces 80 columnas es un
>>> buen diseño. Si por el contrario, se quiere registrar las ventas de cada
>>> tienda, donde hay (hoy) 80, y las columnas se llaman "tienda_1" y
>>> "tienda_79" o "tienda_lugar1" y "tienda_lugar79", entonces sí es un mal
>>> diseño.
>> 
>> Bien, de acuerdo a tu ejemplo, en realidad son atributos de los cuales debo llevar un registro, por lo que creo que coincido mucho más con tu primer ejemplo que con el segundo. 
>> 
>> Un ejemplo del tipo de campos que se lleva sería algo como:
>> 
>> id: 2345
>> fecha_generacion_registro: 2011-04-30
>> monto: 24150
>> cve_obs_apertura: 14
>> cve_obs_primer_asignacion: 21
>> cve_obs_cierre: 23
>> ... y así por 72 claves de observación mas ... 
>> 
>> Aún así creo que buscaré la manera de rediseñar esta tabla, me incomoda un poco que sea tan grande.
> 
> 	Juan Manuel, con esta información no sé si es el caso, y a lo
> mejor me "tiro a la piscina" mucho, pero si la mayor parte de atributos
> son de tipo cve_obs_*, donde "*" es algo así como un "evento" o similar,
> y teniendo un atributo id como PK, entonces podrías tal vez construir
> una tabla del tipo:
> 
> id		FK,
> tipo_evento	un domain de tipo enum o varchar,
> valor		integer,
> PRIMARY KEY(id,tipo_evento)
> 
> 	No sé si te valdrá... Eso además permitiría de forma sencilla
> seleccionar por "eventos"...
> 
> 	Saludos,
> 
> 	Álvaro
> 
> -- 
> 
> Álvaro Hernández Tortosa
> 
> 
> -----------
> NOSYS
> Networked Open SYStems
En lo que mencionas, podría quedar algo así (por ejemplo)?
id			referencia	fecha_generacion_registro		monto		
23139		2345		2011-04-30						24150
Y en otra tabla:
id			referencia			tipo_evento							valor
2281		2345				cve_obs_apertura					14
2282		2345				cve_obs_primer_asignacion			21
2283		2345				cve_obs_cierre						23
...
Saludos!
Juan Manuel
-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2.0.14 (Darwin)
iEYEARECAAYFAk3KrSYACgkQTc4QiYN6hDeeOwCdHbmyzYY4vLp/SBzB80PxcChc
IP4AoIu6eELw9x2/cXcylUQLx9K9qMTY
=Gw84
-----END PGP SIGNATURE-----
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Álvaro Hernández Tortosa | 2011-05-11 15:44:57 | Re: excepcion en SELECT * | 
| Previous Message | Espartano | 2011-05-11 15:35:03 | Re: Consulta de Virtual Machine para PostgreSQL |