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

group by diferentes...

Estas en el tema de group by diferentes... en el foro de SQL Server en Foros del Web. Estimados, como andan? Aqui la siguiente cuestion, si hago esta query: Código: SELECT modelo_id, SUM(consultas_cant) AS total_consultas, SUM(ventas_cant) AS total_ventas, ultimo_lunes FROM chr_statistics GROUP BY ...
  #1 (permalink)  
Antiguo 13/01/2012, 09:36
 
Fecha de Ingreso: noviembre-2009
Mensajes: 381
Antigüedad: 14 años, 5 meses
Puntos: 6
group by diferentes...

Estimados, como andan?
Aqui la siguiente cuestion, si hago esta query:

Código:
SELECT 
modelo_id, 
SUM(consultas_cant) AS total_consultas, 
SUM(ventas_cant) AS total_ventas,
ultimo_lunes
FROM chr_statistics 
GROUP BY modelo_id
Sale este error:
"La columna 'chr_statistics.ultimo_lunes' de la lista de selección no es válida, porque no está contenida en una función de agregado ni en la cláusula GROUP BY."

El problema que la columna ultimo_lunes tiene fechas distintas, distintos Lunes, entonces no puede agruparlos...

Lo que necesito es que agrupe tal como esta en la query y ademas separando por esos ultimos_lunes

Algo asi:

Código HTML:
Ver original
  1. ultimo_lunes          modelo_id
  2. 09-01-2012                   1
  3. 09-01-2012                   2
  4. 09-01-2012                   3
  5.  
  6. 02-01-2012                   1
  7. 02-01-2012                   2
  8. 02-01-2012                   3


Muchas gracias!
Gustavo.

Última edición por gus_anomaly; 13/01/2012 a las 09:37 Razón: se ve mal
  #2 (permalink)  
Antiguo 13/01/2012, 11:29
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: group by diferentes...

puedes poner un ejemplo de tus datos y que quieres que salga, porque asi como pones no se entiende mucho....

Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 13/01/2012, 13:20
Avatar de drako_darpan  
Fecha de Ingreso: octubre-2008
Ubicación: Sinaloa
Mensajes: 617
Antigüedad: 15 años, 6 meses
Puntos: 58
Respuesta: group by diferentes...

Hola que tal, bueno ami se me ocurre que manejes una tabla temporal intermediaria.

El resultado lo insertes en una tabla temporal:

Código SQL:
Ver original
  1. SELECT  modelo_id,  SUM(consultas_cant) AS total_consultas,  SUM(ventas_cant) AS total_ventas
  2. INTO Tu_Tmp
  3. FROM chr_statistics
  4. GROUP BY modelo_id
  5.  
  6. -- Hagas un join con la que contiene ultimo_lunes
  7. SELECT XCampo
  8. FROM Tmp AS a (NOLOCK)
  9. JOIN Tabla_ultimo_lunes AS b ( NOLOCK ) ON ( a.CampoComun = b.CampoComun )
  #4 (permalink)  
Antiguo 13/01/2012, 14:36
 
Fecha de Ingreso: noviembre-2009
Mensajes: 381
Antigüedad: 14 años, 5 meses
Puntos: 6
Respuesta: group by diferentes...

drako_darpan,

muchas gracias, voy a aplicar tu ejemplo!!!

Saludos,
Gustavo.

Etiquetas: fecha, group, select
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.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:37.