consulta de sumas y restas...

25/06/2006 - 21:38 por Gaston P | Informe spam
Hola,
tengo que hacer la siguiente consulta


tengo una tabla
con 2 campos (entre otros...)

campo1 boolean
campo2 money


tengo que conseguir la suma de campo2 siempre y cuando campo1 sea VERDADERO,
menos la suma de campo2 si campo1 es Falso

por ejemplo, si mi tabla tendria tre registros registros

Campo 1 campo2
verdadero 10
Falso 5
Verdadero 10

mi resultado sería 15...

muchas gracias

Preguntas similare

Leer las respuestas

#1 Javier Loria
25/06/2006 - 21:47 | Informe spam
Hola Gaston:
Puedes usar la sentencia CASE. Seria algo como asi:
==SELECT SUM(CASE WHEN Columna1=1 THEN Columna2
ELSE -Columna2 END)
FROM Tabla
Saludos,


Javier Loria
Costa Rica
"Gaston P" wrote in message
news:
Hola,
tengo que hacer la siguiente consulta


tengo una tabla
con 2 campos (entre otros...)

campo1 boolean
campo2 money


tengo que conseguir la suma de campo2 siempre y cuando campo1 sea
VERDADERO,
menos la suma de campo2 si campo1 es Falso

por ejemplo, si mi tabla tendria tre registros registros

Campo 1 campo2
verdadero 10
Falso 5
Verdadero 10

mi resultado sería 15...

muchas gracias

Respuesta Responder a este mensaje
#2 marco
26/06/2006 - 17:44 | Informe spam
Hola Gaston, te lo pongo mas sencillo, usa un campo smallint en lugar de
boolean, que guarde los valores 1 y -1, en lugar de true y false,
respectivamente, y sumas el producto de ambos campos:


create table #tmp (campo1 smallint null, campo2 smallint null)

insert into #tmp values (1,10)
insert into #tmp values (-1,5)
insert into #tmp values (1,10)

select sum(campo1 * campo2) from #tmp


Saludos

Marco Padierna


"Gaston P" escribió en el mensaje
news:
Hola,
tengo que hacer la siguiente consulta


tengo una tabla
con 2 campos (entre otros...)

campo1 boolean
campo2 money


tengo que conseguir la suma de campo2 siempre y cuando campo1 sea
VERDADERO,
menos la suma de campo2 si campo1 es Falso

por ejemplo, si mi tabla tendria tre registros registros

Campo 1 campo2
verdadero 10
Falso 5
Verdadero 10

mi resultado sería 15...

muchas gracias

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