Sumar filas según la repetición de otra columna
Frecuentes
Visto 40 equipos
0
No sé por qué se marcó mi tema anterior !!!???
Esto es lo que he hecho hasta ahora. No puedo pensar en nada más.
Tantas cosas que he hecho para llegar a este punto que se ilustra en Mi problema Sección. Que para simplificar hice el nombre A,B,C,... .No te voy a dar mi tarea.
Mi problema:
2 Respuestas
1
Aquí hay un SQL para SqlServer 2008 para resolver su problema.
with data as (select name, count(*) as occurrence, sum(value) as sumvalue from mytab group by name)
select * from data where
occurrence=(select max(occurrence) from data)
and sumvalue=(select max(sumvalue) from data data2 where data2.occurrence=data.occurrence)
In datos se recopilan los valores necesarios (suma y cuenta). Ahora seleccionamos las filas con ocurrencia máxima y filtramos las filas con el valor máximo.
Respondido 08 Feb 14, 13:02
Respuesta inteligente - Dios te ayude - Muchas gracias - Sir Meysam Ferguson
0
SELECT [Name], [Value]
FROM (
SELECT *, RANK() OVER(ORDER BY [Count] DESC, Value DESC) [rn]
FROM (
SELECT [Name], SUM(Value) [Value], COUNT(1) [Count]
FROM MyTable
GROUP BY Name
) t
) t
WHERE rn = 1
o más simplemente
SELECT TOP 1 WITH TIES [Name], [Value]
FROM (
SELECT [Name], SUM(Value) [Value], COUNT(1) [Count]
FROM MyTable
GROUP BY Name
) t
ORDER BY [Count] DESC, Value DESC
Respondido 08 Feb 14, 13:02
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas sql sql-server or haz tu propia pregunta.
¡Vaya, no puedo copiar el texto de la consulta! :( - Maheswaran Ravisankar
Esa consulta es solo para personas que dicen que esta es mi tarea. Olvídalo. Mi problema comienza desde "Mi problema" ¡Sección! - Sir Meysam Ferguson