From: | Juan Romero <jgromero(at)gmail(dot)com> |
---|---|
To: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>, Linos <info(at)linos(dot)es>, Lista PostgreSql <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: [pgsql-es-ayuda] Consulta diseño |
Date: | 2009-04-15 17:55:05 |
Message-ID: | 3c7410400904151055h2009b217i1bd83490e295039f@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
2009/4/15 Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>:
> Linos escribió:
>
>> Cuando quiero hacer una consultar a los albaranes de salida donde muestre el
>> nombre del cliente tengo que hacer o:
>>
>> SELECT cab.numero_albaran,
>> CASE
>> WHEN tipo_cliente = 'CLIENTE' THEN cli.nombre
>> WHEN tipo_cliente = 'CLIENTE EMPRESA' THEN cli_emp.nombre
>> WHEN tipo_cliente = 'CLIENTE GRUPO' THEN cli_grp.nombre
>> ELSE NULL
>> FROM albaran_salida_cabecera AS cab
>> LEFT JOIN cliente AS cli ON cli.id_cliente = cab.id_cliente
>> LEFT JOIN cliente_empresa AS cli_emp ON cli_emp.id_cliente = cab.id_cliente
>> LEFT JOIN empresa_grupo AS cli_grp ON cli_grp.id_cliente = cab.id_cliente;
>
> Efectivamente parece que necesitara un poco más de normalización.
> Creo que deberías tener una única tabla de "clientes", que llevara el
> nombre y otros datos comunes; y el resto de los datos podrían ir en una
> tabla diferente con columnas para los datos que son únicos a cada tipo.
>
Yo tengo una duda similar y quiero ver si entendí:
sugieres que haya una tabla clientes.
y que haya 3 tablas llamadas por ejemplo: cliente_otros_datos ,
empresa_otros_datos, empresa_grupo_otros_datos
ó
una tabla clientes.
y una tabla clientes_otros_datos que tenga los campos de todos los
tipos pero no nulos?
Creo que hablabas de la primera opción, pero prefiero estar seguro.
Cordial saludo,
Juan Romero
From | Date | Subject | |
---|---|---|---|
Next Message | Cesar Erices | 2009-04-15 17:55:12 | Re: PostgreSQL 8.4 Beta fue liberado |
Previous Message | Jaime Casanova | 2009-04-15 17:41:30 | PostgreSQL 8.4 Beta fue liberado |