Re: Eliminar registros de varias tablas en una consulta
- From: "Agustin Ignacio Genoves" <agustingenoves(at)gmail(dot)com>
- To: "Karina J." <jc(dot)karina(at)gmail(dot)com>
- Cc: pgsql-es-ayuda(at)postgresql(dot)org
- Subject: Re: Eliminar registros de varias tablas en una consulta
- Date: Thu, 31 Jul 2008 10:57:07 -0300
- Message-id: <d50beba10807310657j7180218cnf2523828d084ec3e(at)mail(dot)gmail(dot)com>
No tendria q ser algo por el estilo?
DELETE FROM mdi_detalleinstalacion WHERE mdi_id in (SELECT mdi.mdi_id FROM
mdi_detalleinstalacion mdi INNER JOIN mdm_detalle_material mdm ON
mdi.mdi_id=mdm.mdi_id WHERE mdi.mdi_id=idmdi);
El día 31 de julio de 2008 10:22, Karina J. <jc(dot)karina(at)gmail(dot)com> escribió:
> Hola a todos, estoy intentando borrar registros de distintas tablas todas
> relacionadas en una sola consulta, y bueno tengo una funcion a donde le
> envio un parametro 'idmdi' y quiero eliminar todos los registros de varias
> tablas q tengan a este valor 'idmdi' , la consulta q estoy utilizando es:
>
> DELETE FROM mdi_detalleinstalacion WHERE (SELECT * FROM
> mdi_detalleinstalacion mdi INNER JOIN mdm_detalle_material mdm ON
> mdi.mdi_id=mdm.mdi_id WHERE mdi.mdi_id=idmdi);
>
> pero me sale el sgte error:
>
> ERROR: la subconsulta debe retornar sólo una columna
> CONTEXT: sentencia SQL: «delete from mdi_detalleinstalacion where (select
> * from mdi_detalleinstalacion mdi inner join mdm_detalle_material mdm on
> mdi.mdi_id=mdm.mdi_id where mdi.mdi_id= $1 )»
> PL/pgSQL function "borrar_detalleinstalacion" line 5 at SQL statement
>
> La idea es eliminar registros en una sola consulta.
>
> --
> Saludos,
> Karina
>
>
Home |
Main Index |
Thread Index