Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Consulta SQL

Estas en el tema de Consulta SQL en el foro de Bases de Datos General en Foros del Web. Ola soy io de nuevo mi pregunta es por ke no me da el total de la suma ? ke hago mal.??? Set rsobra = ...
  #1 (permalink)  
Antiguo 20/08/2004, 18:24
Avatar de FireLion  
Fecha de Ingreso: noviembre-2002
Ubicación: En una Cueva
Mensajes: 89
Antigüedad: 21 años, 5 meses
Puntos: 0
Consulta SQL

Ola soy io de nuevo mi pregunta es por ke no me da el total de la suma ? ke hago mal.???



Set rsobra = dbEgre.OpenRecordset("SELECT Sum([Movimientos].[Monto]) AS [tobra], Movimientos.[No], Movimientos.[Fecha], Movimientos.[Usuario] From Movimientos GROUP BY Movimientos.[No], Movimientos.[Fecha], Movimientos.[Usuario] HAVING (((Movimientos.[No]) Like '" & obr & "-*')) AND ((Movimientos.Fecha) Between #7/13/2004# And #7/18/2004#) ORDER BY Sum(Movimientos.Monto);", dbOpenDynaset)


supuestamene me debe de arrojar la suma total como "tobra" y no me la da :(

aki esta la tabla donde tengo los movimientos

http://www23.brinkster.com/firelion/tablamov.jpg


ENLACE A LA IMAGEN DE LA TABLA
  #2 (permalink)  
Antiguo 20/08/2004, 18:48
Avatar de jrp01  
Fecha de Ingreso: mayo-2004
Ubicación: México
Mensajes: 2.702
Antigüedad: 20 años
Puntos: 0
Set rsobra = dbEgre.OpenRecordset("SELECT Sum([Movimientos].[Monto]) AS [tobra], Movimientos.[No], Movimientos.[Fecha], Movimientos.[Usuario] From Movimientos GROUP BY Movimientos.[No], Movimientos.[Fecha], Movimientos.[Usuario] HAVING (((Movimientos.[No]) Like '" & obr & "-*')) AND ((Movimientos.Fecha) Between #7/13/2004# And #7/18/2004#) ORDER BY Sum(Movimientos.Monto);", dbOpenDynaset, Group By Movimientos.[No],Movimientos.[Fecha],Movimientos.[Usuario])

Creo que eso es lo que te falta el group by ya que si usas funciones de gregado(sum,avg,prom, etc) tienes que poner en group by los campos que no tienen esta funciones.

Espero que asi corrijas tu problema Saludos
  #3 (permalink)  
Antiguo 21/08/2004, 18:15
Avatar de FireLion  
Fecha de Ingreso: noviembre-2002
Ubicación: En una Cueva
Mensajes: 89
Antigüedad: 21 años, 5 meses
Puntos: 0
No entiendo si tiene GROUP BY Movimientos.[No], Movimientos.[Fecha], Movimientos.[Usuario]

A ke te refieres?
  #4 (permalink)  
Antiguo 23/08/2004, 01:42
 
Fecha de Ingreso: abril-2003
Ubicación: Madrid
Mensajes: 707
Antigüedad: 21 años, 1 mes
Puntos: 0
Puede ser el formato de fechas, ya que el GROUP BY parece que está bien, prueba con formato mm/dd/aaaa

o el otro where Movimientos.[No]) Like '" & obr & "-*'
pides todos los que movimientos.[No] tengan un guión - y cualquier otra cosa ¿¿?? y luego lo del asterisco.... supongo que estás en access, si es otra base de datos, puede que el asterisco no te funcione, y debas poner un porcentaje %

Por último una recomendación, en vez de filtrar con HAVING hazlo con WHERE, ya que, tal y como está, primero agrupa y suma todos los datos de la tabla y luego filtra, es mejor primero filtrar y luego hacer las sumas y los agrupamientos, filtrar en el HAVING se suele hacer cuando quieres filtrar por una de las sumas, o cuentas, o funciones de agregado

Un saludo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 07:44.