Skip site navigation (1) Skip section navigation (2)

Re:

From: Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl>
To: Borja Martín <borja(at)dagi3d(dot)net>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re:
Date: 2004-04-02 13:50:08
Message-ID: 20040402135008.GD31403@dcc.uchile.cl (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
On Fri, Apr 02, 2004 at 02:27:49PM +0200, Borja Martín wrote:
> supongamos que tengo en la tabla baskets la siguiente fila:
> +----+---------+------------+--------+
> | id | user_id | orders_ids | date   |
> +----+---------+------------+--------+
> |  1 | borja   | 139|140    | 200402 |
> +----+---------+------------+--------+

Esto quiere decir que tu modelo no está correctamente normalizado.  Yo
trabajé en una empresa que tenían un modelo así y creeme, no es
agradable.  Si puedes, corrígelo, y todas las aplicaciones que lo usen.
A la larga, es menos trabajo, y mientras antes mejor.
(Puedes crear una vista que genere esta versión no normalizada a partir
de la normalizada para mantener compatibilidad mientras corriges las
aplicaciones)

> se podria en un solo query obtener los orders_ids por separado(139 y
> 140) para luego hacer el query SELECT * FROM baskets WHERE baskets.id
> = 1 AND (orders.id = 139 OR orders.id = 140) ?

Si, se puede, pero es doloroso y hay que saber la cardinalidad de
antemano.  Checa la función split_part().

-- 
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
Major Fambrough: You wish to see the frontier?
John Dunbar: Yes sir, before it's gone.

In response to

  • at 2004-04-02 12:27:49 from Borja Martín

Responses

  • Re: at 2004-04-02 16:18:28 from Eligio Cachón Menéndez

pgsql-es-ayuda by date

Next:From: Alvaro HerreraDate: 2004-04-02 13:56:21
Subject: Re: Acerca del cambio reciente de la lista de correos
Previous:From: Ricardo De Castro AquinoDate: 2004-04-02 13:28:06
Subject: Re: Acerca del cambio reciente de la lista de correos

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group