Ayuda con un borrado de SQL

Hola a todos:

Tengo una duda en la que quizás me podáis ayudar, necesito borrar una serie de filas de una DB SQL SERVER 2000, pero no encuentro la sentencia SQL adecuada para ello.
El objetivo es borrar una serie de articulos que tienen en su descripción CJ, el problema es que la descripcion esta en una tabla y el articulo en cuestion esta en otra, tienen en comun un campo llamado ID.

¿Como podría eliminar esas lineas?

Lo he intentando devolviendo los articulos en la tabla donde se encuentra la descripción con esta sentencia:
USE DB;
GO
SELECT *
FROM ARTICULOS
WHERE DESCRIPCION LIKE '%CJ%'

Y despues he creado esto

USE DB;
GO
DELETE FROM ARTIENLACE
WHERE IdArticu IN
(SELECT DESCRIPCION
FROM ARTICULOS
WHERE DESCRIPCION LIKE 'OTC%')



Muchas gracias por vuestra ayuda, y disculpad las molestias.
N30designs escribió:
DELETE FROM ARTIENLACE
WHERE IdArticu IN
(SELECT DESCRIPCION
FROM ARTICULOS
WHERE DESCRIPCION LIKE 'OTC%')



la de arriba casi esta bien.Prueba con esta:
DELETE FROM ARTIENLACE
WHERE IdArticu IN
(SELECT IdArticu
FROM ARTICULOS
WHERE DESCRIPCION LIKE 'OTC%')

tienes que devolver el id de articulo en la subconsulta.

Otra manera de acerla seria con un join en vez de subconsultas:
DELETE FROM ARTIENLACE  ae join ARTICULOS a  on ae.IdArticu=a.IdArticu where a.DESCRIPCION LIKE 'OTC%'
1 respuesta