una delete

09/08/2006 - 12:11 por Enrique Garcia | Informe spam
Hola grupo,

Como puedo borrar el resultado de una select?? es decir lo que quiero borrar
es el resultado del enlace por INNER JOIN de dos tablas pero me dice que hay
"Sintaxis incorrecta cerca de la palabra clave 'inner'."

ej:

delete from tblPrimeraTabla inner join tblSegundaTabla on tblPrimeraTabla.id
= tblSegundaTabla.id
where [lo que sea]

Gracias,

Preguntas similare

Leer las respuestas

#6 Enrique Garcia
10/08/2006 - 09:01 | Informe spam
Gracias a ambos.

"Maxi" escribió en el mensaje
news:
Para mi gusto la ANSI :-) pero lo mio ya es una deformacion uso siempre
TSQL y del ansi casi me olvide :(



Salu2

Microsoft MVP SQL Server
www.sqlgururs.org
Email:


"Alejandro Mesa" wrote in
message news:
Isaias,

La primera version (delete table_name ... from ...) es una extension de
T-SQL. La segunda es compatible con el estandard SQL-92.

En cuanto al rendimiento, depende de la cantidad de filas e indexes en
cada
tabla. Por ejemplo, las siguientes sentencias dan el mismo plan de
ejecucion
en SQL Server 2000.

use northwind
go

delete dbo.[order details]
from dbo.[order details] as od inner join dbo.[orders] as oh on
od.orderid >> oh.orderid
where oh.customerid = N'ALFKI'

delete dbo.[order details]
where exists (
select *
from dbo.[orders] as oh
where oh.orderid = dbo.[order details].orderid and oh.customerid =
N'ALFKI'
)

Ahora mi pregunta, cual crees que es mas legible?.


AMB



"Isaias" wrote:

Alex

Viendo tu recomendacion y la de Maxi, ¿Que diferencia hay entre la
instrucion FROM y la de EXISTS?, ¿Existe algun MAYOR RENDIMIENTO en
cualquiera de las dos recomendaciones?.

Gracias
Saludos
IIslas


"Alejandro Mesa" wrote:

> Trata:
>
> delete dbo.tblPrimeraTabla
> where exists (
> select *
> from dbo.tblSegundaTabla as s
> where s.[id] = dbo.tblPrimeraTabla.[id] and ...
> )
> go
>
>
> AMB
>
> "Enrique Garcia" wrote:
>
> > Hola grupo,
> >
> > Como puedo borrar el resultado de una select?? es decir lo que
> > quiero borrar
> > es el resultado del enlace por INNER JOIN de dos tablas pero me dice
> > que hay
> > "Sintaxis incorrecta cerca de la palabra clave 'inner'."
> >
> > ej:
> >
> > delete from tblPrimeraTabla inner join tblSegundaTabla on
> > tblPrimeraTabla.id
> > = tblSegundaTabla.id
> > where [lo que sea]
> >
> > Gracias,
> >
> >
> >






email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida