SQL - CONSULTA DE RANGOS DE FECHA

   
Vista:

CONSULTA DE RANGOS DE FECHA

Publicado por The YerseY (2 intervenciones) el 22/01/2014 21:13:39
Buenas tardes a todos llegue aqui buscando ayuda acerca de un tema de SQL me gustaria que me puedan ayudar en lo siguiente.

tengo varias tablas
VentaD201401
VentaD201402
VentaD201403
VentaD201404
......(se crea una tabla cada mes)

cada tabla tiene los mismos campos

FechaVenta
Articulo
Cantidad
Monto

Lo que quiero es tener un Proceso Almacenado al que le pueda:

Ingresar el nombre de la tabla para indicarle en que tabla tiene que buscar
Ingresar el rango de fecha que tiene que buscar (si escojo varios dias)
Ingresar la fecha unica que tiene que buscar(si es que escojo solo un dia)

Devolverme un resumen de cantidad y monto resumido por articulo
(ose algo como)

ARTICULO ---CantidadVendida---MontoTotalVendido

Cuaderno-------------15------------------------50.00
Libro--------------------18----------------------150.00
lapiz---------------------14-----------------------18.00


eh realizado esta consulta

SELECT cdarticulo as ARTICULO ,SUM(cantidad)as CantidadVendida, sum(mtototal) as MontoTotalVendido
FROM ventad201401 where fecproceso='20140122'
GROUP BY cdarticulo

y me devuelve los datos que quiero pero si ingreso la fecha del dia que quiero
pero lo que necesito es que sea un proceso almacenado y lo que no encuentro solucion poder hacerlo por fechas
ingresadas por variables o algo parecido.

espero su ayuda Muchas Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias

CONSULTA DE RANGOS DE FECHA

Publicado por Isaias (691 intervenciones) el 23/01/2014 19:01:22
Dependera de que motor de base de datos.

has utilizado ???

where fecproceso >= @TUFECHA <= @TUFECHA
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

CONSULTA DE RANGOS DE FECHA

Publicado por The YerseY (2 intervenciones) el 23/01/2014 19:16:54
si tuviera el rango del dia 05/01/2014 al 10/01/2014

se puede usar esa sentencia?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

CONSULTA DE RANGOS DE FECHA

Publicado por Leopoldo Taylhardat (89 intervenciones) el 23/01/2014 22:54:42
Saludos...

Primero... no sé porqué usas una tabla por cada mes, con agregarle un campo índice de ano-mes a la tabla no necesitas eso... inlclusive con la fecha puedes saber a qué mes corresponde la data....

Segundo: para filtrar el valor puedes uilizar el condicional "between" ejemplo...

SELECT cdarticulo as ARTICULO ,SUM(cantidad)as CantidadVendida, sum(mtototal) as MontoTotalVendido
FROM ventad201401 where fecproceso between fecha_1 and fecha_2
GROUP BY cdarticulo

y es lo mismo que..
where fecproceso >=fecha_1 and fecproceso <= fecha_2

por otro lado... no sé con que BD trabajas... pero en SQL Anywhere puedes tener el select así pasando como parámetro el nombre de la tabla ... ejemplo el procedimiento recibiría 3 argumentos...
tabla= nombre de la tabla
fecha_1= fecha inicial
fecha_2= fecha final

En SQL Anywhere lo que este encerrado entre "||" es un parámetro sustitutivo...

y tu select quedaría así (en SQL Anywhere repito).... puedes buscar si tu bd maneja algo parecido...

SELECT cdarticulo as ARTICULO ,SUM(cantidad)as CantidadVendida, sum(mtototal) as MontoTotalVendido
FROM ||tabla|| where fecproceso between fecha_1 and fecha_2
GROUP BY cdarticulo


Espero que te sirva...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar