¡A MÍ LA BRIGADA ANTI-CURSORES!

04/08/2004 - 14:43 por Jomaweb | Informe spam
Hola

Quiero hacer un update de una tabla de artículos vendidos extrayendo el
numero de articulos vendidos de otra tabla de ventas. Así:

select @tipo=select distinct tipo_articulo from articulos
UPDATE VENDIDO SET CANTIDAD=(select count(*) from ventas where
articulo=@tipo) WHERE ARTICULO=@tipo


pero me dice que el SP no se puede ejecutar dado que la selección devuelve
más de un registro. No quisiera usar Cursores ni Fetch, pero me temo que he
cometido un error de planteamiento en algún lado.

Gracias
 

Leer las respuestas

#1 Xavi
04/08/2004 - 14:53 | Informe spam
Si en la tabla tipo_articulo tienes más de un registro, la consulta

select @tipo=select distinct tipo_articulo from articulos

no se podrá asociar a la variable @tipo. Esta asignación sólo es posible si
la consulta

select distinct tipo_articulo from articulos

tuviese un sólo registro.


Xavi

"Jomaweb" escribió en el mensaje
news:%
Hola

Quiero hacer un update de una tabla de artículos vendidos extrayendo el
numero de articulos vendidos de otra tabla de ventas. Así:

select @tipo=select distinct tipo_articulo from articulos
UPDATE VENDIDO SET CANTIDAD=(select count(*) from ventas where
articulo=@tipo) WHERE ARTICULO=@tipo


pero me dice que el SP no se puede ejecutar dado que la selección devuelve
más de un registro. No quisiera usar Cursores ni Fetch, pero me temo que


he
cometido un error de planteamiento en algún lado.

Gracias


Preguntas similares