Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Consulta diseño

From: Luis Fernando Lopez Aguilar <flopezg333(at)gmail(dot)com>
To: Lista PostgreSql <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Consulta diseño
Date: 2009-04-15 18:47:42
Message-ID: b48ca6190904151147p5ac9a4f5jdbb69b27b44bdccd@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola
Deberian tener tres tablas una tabla que podemos llamarla clientes y otra
cliente_juridico y otra cliente_natural, estas dos ultimas son entidad debil
de cliente.
Explico
persona natural en cliente_natural es un ser humano con nombres apellidos y
lo que se desee, persona juridica es una empresa en cliente_juridico que son
los nombres de las empresas con todos sus datos y si quisieran el nombre que
es comun a las dos entidades debiles de clientes lo puedo tener tambien en
la tabla clientes en un solo campo para efectos de listados busquedas etc
por ej un char(80) ... ahora como se que datos debo pedir cuando se hace
input ... entonces pongo un campo tipo de persona 1=natural 2=juridica en la
tabla clientes ... y listo el pollo.

Saludos
Fernando Lopez
Bolivia Santa Cruz de la Sierra

El 15 de abril de 2009 13:55, Juan Romero <jgromero(at)gmail(dot)com> escribió:

> 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
> --
> TIP 3: Si encontraste la respuesta a tu problema, publícala, otros te lo
> agradecerán
>

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2009-04-15 18:48:57 Re: Consulta diseño
Previous Message Linos 2009-04-15 18:46:21 Re: Consulta diseño