update

28/06/2005 - 16:55 por Eduardo De Luca | Informe spam
Que tal como están , tengo que realizar el sgte update pero no lo puedo
realizar por el error descrito mas abajo.

Alguien me puede ayudar a como hacerlo de manera correcta?

Gracias



Subrayo la línea donde esta el error de sintaxis





update al_aut set v_deuda = isnull(SUM(prc_importe-prc_intereses),0)

FROM e1_c_prestamos_cuo
(index=ind_e1_prc_pre_estado_fecha)

WHERE tipoprod='P'
and e1_c_prestamos_cuo.prc_estado = 'A' AND prc_pre =ctc_id









Error Server: Msg 157, Level 15, State 1, Line 1

An aggregate may not appear in the set list of an UPDATE statement.

Preguntas similare

Leer las respuestas

#1 Isaias
28/06/2005 - 17:10 | Informe spam
Debes UNIR la tabla que vas a actualizar con la tabla donde obtienes la SUMA:

(estoy suponiendo el JOIN, de estar incorrectas las columnas, cambialas)

UPDATE al_aut SET v_deuda = isnull(SUM(prc_importe-prc_intereses),0)
FROM e1_c_prestamos_cuo JOIN al_aut ON e1_c_prestamos_cuo.prc_pre =
al_aut.ctc_id
WHERE tipoprod='P'
AND e1_c_prestamos_cuo.prc_estado = 'A'
Respuesta Responder a este mensaje
#2 Alejandro Mesa
28/06/2005 - 17:13 | Informe spam
Eduardo,

Puedes indicar que columnas pertenecen a cual tabla?, asi como la relacion
entre ambas tablas. Se hace muy dificil poder ayudar cuando no se tiene
informacion suficiente.

Debes usar un patron como:

update t1
set c2 = (select isnull(sum(t2.c3), 0) from t2 where t2.c1 = t1.c1 where ...)
where ...


AMB

"Eduardo De Luca" wrote:

Que tal como están , tengo que realizar el sgte update pero no lo puedo
realizar por el error descrito mas abajo.

Alguien me puede ayudar a como hacerlo de manera correcta?

Gracias



Subrayo la línea donde esta el error de sintaxis





update al_aut set v_deuda = isnull(SUM(prc_importe-prc_intereses),0)

FROM e1_c_prestamos_cuo
(index=ind_e1_prc_pre_estado_fecha)

WHERE tipoprod='P'
and e1_c_prestamos_cuo.prc_estado = 'A' AND prc_pre =ctc_id









Error Server: Msg 157, Level 15, State 1, Line 1

An aggregate may not appear in the set list of an UPDATE statement.



Respuesta Responder a este mensaje
#3 Eduardo De Luca
28/06/2005 - 17:54 | Informe spam
Hola Aljendro , la relacion entre las tablas es e1_c_prestamos_cuo .prc_pre
=al_aut.ctc_id

entonces el codigo quedaria asi


update al_aut set v_deuda = isnull(SUM(e1_c_prestamos_cuo
.prc_importe-e1_c_prestamos_cuo .prc_intereses),0)

FROM e1_c_prestamos_cuo
(index=ind_e1_prc_pre_estado_fecha)

WHERE tipoprod='P'
and e1_c_prestamos_cuo.prc_estado = 'A' AND e1_c_prestamos_cuo .prc_pre
=al_aut.ctc_id



"Eduardo De Luca" escribió en el mensaje
news:uVuwzB$
Que tal como están , tengo que realizar el sgte update pero no lo puedo
realizar por el error descrito mas abajo.

Alguien me puede ayudar a como hacerlo de manera correcta?

Gracias



Subrayo la línea donde esta el error de sintaxis





update al_aut set v_deuda = isnull(SUM(prc_importe-prc_intereses),0)

FROM e1_c_prestamos_cuo
(index=ind_e1_prc_pre_estado_fecha)

WHERE tipoprod='P'
and e1_c_prestamos_cuo.prc_estado = 'A' AND prc_pre =ctc_id









Error Server: Msg 157, Level 15, State 1, Line 1

An aggregate may not appear in the set list of an UPDATE statement.


Respuesta Responder a este mensaje
#4 Alejandro Mesa
28/06/2005 - 20:29 | Informe spam
Trata,

update
al_aut
set
v_deuda = (

select
isnull(SUM(e1_c_prestamos_cuo.prc_importe -
e1_c_prestamos_cuo.prc_intereses),0)
FROM
e1_c_prestamos_cuo (index=ind_e1_prc_pre_estado_fecha)
WHERE
e1_c_prestamos_cuo.tipoprod = 'P'
and e1_c_prestamos_cuo.prc_estado = 'A'
AND e1_c_prestamos_cuo.prc_pre = al_aut.ctc_id
)
where
exists (
select
*
from
e1_c_prestamos_cuo
where
e1_c_prestamos_cuo.prc_pre = al_aut.ctc_id
and e1_c_prestamos_cuo.prc_estado = 'A'
and e1_c_prestamos_cuo.tipoprod = 'P'
)


AMB

"Eduardo De Luca" wrote:

Hola Aljendro , la relacion entre las tablas es e1_c_prestamos_cuo .prc_pre
=al_aut.ctc_id

entonces el codigo quedaria asi


> update al_aut set v_deuda = isnull(SUM(e1_c_prestamos_cuo
> .prc_importe-e1_c_prestamos_cuo .prc_intereses),0)
>
> FROM e1_c_prestamos_cuo
> (index=ind_e1_prc_pre_estado_fecha)
>
> WHERE tipoprod='P'
> and e1_c_prestamos_cuo.prc_estado = 'A' AND e1_c_prestamos_cuo .prc_pre
> =al_aut.ctc_id

"Eduardo De Luca" escribió en el mensaje
news:uVuwzB$
> Que tal como están , tengo que realizar el sgte update pero no lo puedo
> realizar por el error descrito mas abajo.
>
> Alguien me puede ayudar a como hacerlo de manera correcta?
>
> Gracias
>
>
>
> Subrayo la línea donde esta el error de sintaxis
>
>
>
>
>
> update al_aut set v_deuda = isnull(SUM(prc_importe-prc_intereses),0)
>
> FROM e1_c_prestamos_cuo
> (index=ind_e1_prc_pre_estado_fecha)
>
> WHERE tipoprod='P'
> and e1_c_prestamos_cuo.prc_estado = 'A' AND prc_pre =ctc_id
>
>
>
>
>
>
>
>
>
> Error Server: Msg 157, Level 15, State 1, Line 1
>
> An aggregate may not appear in the set list of an UPDATE statement.
>
>



Respuesta Responder a este mensaje
#5 Eduardo De Luca
28/06/2005 - 23:57 | Informe spam
Alejandro Gracias , lo resolvi de la sgte manera


CREATE VIEW dbo.vw_e1_p_sumaprestamo_desvio
AS
SELECT ISNULL(SUM(prc_importe - prc_intereses), 0) AS importe, prc_pre
FROM dbo.e1_c_prestamos_cuo
WHERE (prc_estado = 'A')
GROUP BY prc_pre


y luego

update al_aut set v_deuda = importe
FROM vw_e1_p_sumaprestamo_desvio
WHERE prc_pre=ctc_id and tipoprod='P'

funciona de primera , gracias por todo
"Alejandro Mesa" escribió en el
mensaje news:
Trata,

update
al_aut
set
v_deuda = (

select
isnull(SUM(e1_c_prestamos_cuo.prc_importe -
e1_c_prestamos_cuo.prc_intereses),0)
FROM
e1_c_prestamos_cuo (index=ind_e1_prc_pre_estado_fecha)
WHERE
e1_c_prestamos_cuo.tipoprod = 'P'
and e1_c_prestamos_cuo.prc_estado = 'A'
AND e1_c_prestamos_cuo.prc_pre = al_aut.ctc_id
)
where
exists (
select
*
from
e1_c_prestamos_cuo
where
e1_c_prestamos_cuo.prc_pre = al_aut.ctc_id
and e1_c_prestamos_cuo.prc_estado = 'A'
and e1_c_prestamos_cuo.tipoprod = 'P'
)


AMB

"Eduardo De Luca" wrote:

Hola Aljendro , la relacion entre las tablas es e1_c_prestamos_cuo
.prc_pre
=al_aut.ctc_id

entonces el codigo quedaria asi


> update al_aut set v_deuda = isnull(SUM(e1_c_prestamos_cuo
> .prc_importe-e1_c_prestamos_cuo .prc_intereses),0)
>
> FROM e1_c_prestamos_cuo
> (index=ind_e1_prc_pre_estado_fecha)
>
> WHERE
> tipoprod='P'
> and e1_c_prestamos_cuo.prc_estado = 'A' AND e1_c_prestamos_cuo .prc_pre
> =al_aut.ctc_id

"Eduardo De Luca" escribió en el mensaje
news:uVuwzB$
> Que tal como están , tengo que realizar el sgte update pero no lo puedo
> realizar por el error descrito mas abajo.
>
> Alguien me puede ayudar a como hacerlo de manera correcta?
>
> Gracias
>
>
>
> Subrayo la línea donde esta el error de sintaxis
>
>
>
>
>
> update al_aut set v_deuda = isnull(SUM(prc_importe-prc_intereses),0)
>
> FROM e1_c_prestamos_cuo
> (index=ind_e1_prc_pre_estado_fecha)
>
> WHERE
> tipoprod='P'
> and e1_c_prestamos_cuo.prc_estado = 'A' AND prc_pre =ctc_id
>
>
>
>
>
>
>
>
>
> Error Server: Msg 157, Level 15, State 1, Line 1
>
> An aggregate may not appear in the set list of an UPDATE statement.
>
>



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