From: | Roberto Andrade Fonseca <randrade(at)inteligentes(dot)com(dot)mx> |
---|---|
To: | Conrado Blasetti <conrado(at)mapfre(dot)com(dot)ar> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Eliminar registros |
Date: | 2005-10-25 19:15:37 |
Message-ID: | 1130267737.435e84599667d@mail.nul-unu.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Mensaje citado por Conrado Blasetti <conrado(at)mapfre(dot)com(dot)ar>:
> Gente, buenas tardes.
>
> Tengo dos tablas.
> Con una consulta, puedo traerme todos los registros de A que no existan en
> B:
>
> select * from TABLA_A a where not exists ( select 1 from TABLA_B where id =
> a.id);
> Lo que encesito es borrar los registros de la tabla A que no existan en B,
> por lo tanto, lo unico que hice fue reemplazar el select por el delete, pero
> no funciona, desde el pgadmin III no puedo visualizar el error.
> La sintaxis es la correcta??
>
> delete from TABLA_A a where not exists ( select 1 from TABLA_B where id =
> a.id);
Trata con:
select * from tabla_a where campo not in (select campo from tabla_b where
condicion);
y
delete from tabla_a where campo not in (select campo from tabla_b where
condicion);
Saludos,
--
Roberto Andrade Fonseca
Inteligentes.com, S.A. de C.V.
Tel. 5207-1672/73
From | Date | Subject | |
---|---|---|---|
Next Message | Gustavo | 2005-10-25 19:24:03 | Re: clave del usuario posgres???linux |
Previous Message | Conrado Blasetti | 2005-10-25 19:02:11 | Eliminar registros |