From: | Jaime Casanova <systemguards(at)gmail(dot)com> |
---|---|
To: | Alberto Piña <alberto(dot)pina(at)kebir(dot)com(dot)mx> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Rendimiento del delete |
Date: | 2005-05-06 06:44:32 |
Message-ID: | c2d9e70e05050523446de03cb3@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
On 5/5/05, Alberto Piña <alberto(dot)pina(at)kebir(dot)com(dot)mx> wrote:
> Lista... un poquito de su tiempo.
> Espero no decir una estupidez (ni merecerme un RTFM o STFW).
>
Siendo sincero, STFW no lo conocia.
INSERT INTO jargon VALUES ('STFW');
> Estoy haciendo varios deletes sobre mi base de datos.
> La pregunta es: Es lo mismo o afecta en algo el rendimiento o es mejor que
> si voy a eliminar 10 registros lo haga DELETE FROM tabla WHERE clave = x
> (una vez por cada registro) o lo haga DELETE FROM tabla WHERE clave IN
> (1,2,3...).
>
--Este deberia usar el indice, estoy asumiendo que clave significa que
hay un indice DELETE FROM tabla WHERE clave = x;
-- Siendo que son constantes no veo porque no podria usar el indice tambien
DELETE FROM tabla WHERE clave IN (1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
Como toda sentencia esta dentro de una transaccion implicita, si no
hay ninguna explicita, la segunda ejecutaria ligeramente mas rapido si
no hay una transaccion abierta; si la hay, no veo diferencia.
En todo caso lo mejor seria probar.
--
Atentamente,
Jaime Casanova
(DBA: DataBase Aniquilator ;)
From | Date | Subject | |
---|---|---|---|
Next Message | Oswaldo Hernández | 2005-05-06 11:05:24 | Plpythonu y Python 2.4 |
Previous Message | Jaime Casanova | 2005-05-06 06:29:02 | Re: Ayuda Por Favor, Me hechan del Trabajo |