consulta_

10/11/2006 - 23:25 por William Garcia | Informe spam
buen dia

tengo esta consulta pero quiero que me haga lo siguiente: si despues del
30/08/06 tiene una nota credito doctpo='3' me reste ese valor al saldo

Select A.abocod, Sum(saldo) From (select abocod, sum(docimp) as saldo from
document where doctpo in (1,4,6,7)
Group by abocod
union all
select abocod, sum(docimp) * -1 from document where doctpo in (2,3,5,8)
Group by abocod) A Group by
A.abocod

muchas gracias

Preguntas similare

Leer las respuestas

#1 Ele
11/11/2006 - 02:07 | Informe spam
prueba utilizando un case ejemplo
Sum(Case When doctpo='3' And fecha > '20060830' Then Saldo*-1 Else Saldo
End )
"William Garcia" escribió en el mensaje
news:
buen dia

tengo esta consulta pero quiero que me haga lo siguiente: si despues del
30/08/06 tiene una nota credito doctpo='3' me reste ese valor al saldo

Select A.abocod, Sum(saldo) From (select abocod, sum(docimp) as saldo from
document where doctpo in (1,4,6,7)
Group by abocod
union all
select abocod, sum(docimp) * -1 from document where doctpo in (2,3,5,8)
Group by abocod) A Group by
A.abocod

muchas gracias

Respuesta Responder a este mensaje
#2 BitOne®
11/11/2006 - 05:04 | Informe spam
Hola Ele:

Intenta:

select a.abocod,
sum(case
when doctpo in ( 2,3,5,8) and fecha > '20060830' then -docimp
when doctpo in (1,4,6,7) then docimp
end ) Saldo
from document
group by abocod
go

Saludos,

BitOne®
www.yocsql.com

"Ele" wrote in message
news:%
prueba utilizando un case ejemplo
Sum(Case When doctpo='3' And fecha > '20060830' Then Saldo*-1 Else Saldo
End )
"William Garcia" escribió en el mensaje
news:
> buen dia
>
> tengo esta consulta pero quiero que me haga lo siguiente: si despues del
> 30/08/06 tiene una nota credito doctpo='3' me reste ese valor al saldo
>
> Select A.abocod, Sum(saldo) From (select abocod, sum(docimp) as saldo


from
> document where doctpo in (1,4,6,7)
> Group by abocod
> union all
> select abocod, sum(docimp) * -1 from document where doctpo in (2,3,5,8)
> Group by abocod) A Group by
> A.abocod
>
> muchas gracias
>


Respuesta Responder a este mensaje
#3 William Garcia
11/11/2006 - 17:14 | Informe spam
la dejo de esta manera y no me arroja error

Select A.abocod, Sum(saldo) From (select abocod, sum(docimp) as saldo from
document where doctpo in (1,4,6,7)
Group by abocod
union all
select abocod, sum(docimp) * -1 from document where doctpo in (2,3,5,8)
and Sum(Case When doctpo='3' And fecha > '20060830' Then Saldo*-1 Else Saldo
End Group by abocod) A Group by
A.abocod



"Ele" escribió en el mensaje
news:%
prueba utilizando un case ejemplo
Sum(Case When doctpo='3' And fecha > '20060830' Then Saldo*-1 Else Saldo
End )
"William Garcia" escribió en el mensaje
news:
buen dia

tengo esta consulta pero quiero que me haga lo siguiente: si despues del
30/08/06 tiene una nota credito doctpo='3' me reste ese valor al saldo

Select A.abocod, Sum(saldo) From (select abocod, sum(docimp) as saldo
from document where doctpo in (1,4,6,7)
Group by abocod
union all
select abocod, sum(docimp) * -1 from document where doctpo in (2,3,5,8)
Group by abocod) A Group by
A.abocod

muchas gracias





Respuesta Responder a este mensaje
#4 William Garcia
11/11/2006 - 17:15 | Informe spam
me da el siguiente error

Servidor: mensaje 107, nivel 16, estado 2, línea 1
El prefijo de columna 'a' no coincide con un nombre de tabla o con un alias
usado en la consulta.

"BitOne®" escribió en el mensaje
news:%233O%
Hola Ele:

Intenta:

select a.abocod,
sum(case
when doctpo in ( 2,3,5,8) and fecha > '20060830' then -docimp
when doctpo in (1,4,6,7) then docimp
end ) Saldo
from document
group by abocod
go

Saludos,

BitOne®
www.yocsql.com

"Ele" wrote in message
news:%
prueba utilizando un case ejemplo
Sum(Case When doctpo='3' And fecha > '20060830' Then Saldo*-1 Else Saldo
End )
"William Garcia" escribió en el mensaje
news:
> buen dia
>
> tengo esta consulta pero quiero que me haga lo siguiente: si despues
> del
> 30/08/06 tiene una nota credito doctpo='3' me reste ese valor al saldo
>
> Select A.abocod, Sum(saldo) From (select abocod, sum(docimp) as saldo


from
> document where doctpo in (1,4,6,7)
> Group by abocod
> union all
> select abocod, sum(docimp) * -1 from document where doctpo in (2,3,5,8)
> Group by abocod) A Group by
> A.abocod
>
> muchas gracias
>






Respuesta Responder a este mensaje
#5 BitOne®
12/11/2006 - 04:37 | Informe spam
Intenta ahora :

Se habia colado una "a" como alias. :)


select abocod,
sum(case
when doctpo in ( 2,3,5,8) and fecha > '20060830' then -docimp
when doctpo in (1,4,6,7) then docimp
end ) Saldo
from document
group by abocod
go

Saludos,

BitOne®

"William Garcia" wrote in message
news:%
la dejo de esta manera y no me arroja error

Select A.abocod, Sum(saldo) From (select abocod, sum(docimp) as saldo from
document where doctpo in (1,4,6,7)
Group by abocod
union all
select abocod, sum(docimp) * -1 from document where doctpo in (2,3,5,8)
and Sum(Case When doctpo='3' And fecha > '20060830' Then Saldo*-1 Else


Saldo
End Group by abocod) A Group by
A.abocod



"Ele" escribió en el mensaje
news:%
> prueba utilizando un case ejemplo
> Sum(Case When doctpo='3' And fecha > '20060830' Then Saldo*-1 Else Saldo
> End )
> "William Garcia" escribió en el mensaje
> news:
>> buen dia
>>
>> tengo esta consulta pero quiero que me haga lo siguiente: si despues


del
>> 30/08/06 tiene una nota credito doctpo='3' me reste ese valor al saldo
>>
>> Select A.abocod, Sum(saldo) From (select abocod, sum(docimp) as saldo
>> from document where doctpo in (1,4,6,7)
>> Group by abocod
>> union all
>> select abocod, sum(docimp) * -1 from document where doctpo in (2,3,5,8)
>> Group by abocod) A Group by
>> A.abocod
>>
>> muchas gracias
>>
>
>


Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida