Ver Mensaje Individual
  #2 (permalink)  
Antiguo 15/06/2010, 07:29
Avatar de -rommel_
-rommel_
 
Fecha de Ingreso: junio-2008
Ubicación: Lima
Mensajes: 360
Antigüedad: 16 años, 6 meses
Puntos: 1
Respuesta: Duda con consulta delete de varios elementos...

Bueno el Error te indica exactamente en que esta fallando tu consulta... UNA SUBCONSULTA, solo debe DEVOLVER UN SOLO valor... sino con que lo PODRIAS COMPARAR???...
si tu quieres comparar ese CAMPOY1 con una lista de VALORES QUE TE DEVUELVE esa SUBCONSULTa, entonces UTILIZA "EXISTS".. es mucho mejor... o parecido a eso... "IN", pero te recomiendo exists... algo asi (tomando tu ejemplo, no quiero modificar nada, solo te muestro el uso de EXISTS)... pruebalo asi...
Código SQL:
Ver original
  1. DELETE *
  2. FROM Tabla1 AS tbl1
  3. INNER JOIN Tabla2 AS tbl2 ON tbl1.CampoX1 = tbl2.CampoY1
  4. WHERE   EXISTS  (   SELECT  1
  5.                     FROM    Tabla1 tbl1x
  6.                     INNER   JOIN tabla2 tbl2x ON tbl1x.CampoX1 = tbl2x.CampoY1
  7.                     WHERE   tbl2x.CampoY1 = tbl2.CampoY2
  8.                         AND CampoY2Condicion = 'Valor')