La consulta es la siguiente, tengo una tabla con columnas de importe1, fecha1, importe2, fecha2, importe3, fecha3. Lo que quiero hacer es un select donde me devuelva la suma de los importes según la fecha que le ingrese. La fecha puede estar en fecha1, o fecha2, o fecha3. ¿Cómo se haría el sql?
1 Respuesta
Respuesta de tigrefox
1
1
tigrefox, Colaborador, Solidario y Amigo, Ingeniero de Sistemas,...
espero hacerme entender, voy a empezar por la siguiente instruccion select sum(importe1), sum(importe2), sum(importe3) from tabla me devuelve la sumatoria total de cada importe, sin importar la fecha, Ahora bien necesitas conocer el total de cada importe dependiendo la fecha, select sum(importe1) from tabla where fecha1 = fechaleida select sum(importe2) from tabla where fecha2 = fechaleida select sum(importe3) from tabla where fecha3 = fechaleida Ahora : select sum(importe1), sum(importe2), sum(importe3) from tabla where fecha1 = fechaleida or fecha2 = fechaleida or fecha3 = fechaleida esta instruccion calcula la sumatoria de cada importe cuando en fecha1 o fecha2 o fecha3 se encuentre la fecha leida Otra select importe1+importe2)importe3 from tabla where fecha1 = fechaleida or fecha2 = fechaleida or fecha3 = fechaleida Esta calcula la suma de los importes cuando en fecha1 o fecha2 o fecha3 se encuentre la fecha leída Te envío varias posibilidades para que las analices y determines cual es la que más te sirve, ahora bien si ninguna te ayuda, indícamelo y envía me un ejemplo como el siguiente importe1 fecha1 importe2 fecha2 importe3 fecha3 201 xx/ee/rrrrr 456 rr/77/7777 60 xx/jj/rrrrr 120 yy/ee/rrrrr 46 xx/jj/rrrrr 60 ii/88/8888 100 xx/jj/rrrrr 56 77/77/trew 60 xx/jj/rrrrr necesito que si la fecha es xx/jj/rrrr el resultado debe ser: importe1 importe2 importe3 100 46 120 o importe1+importe2+importe3 60 46 160 Espero hacerme entender, espero tu respuesta.