Pregunta

pregunta loco ... sin embargo, quiero que la suma de todas las filas de una tabla de una columna (sin utilizar la cláusula group by)

Ejemplo:

Table = Survey
Columns = Answer1, Answer2, Answer3
        1        1         1
        4        3         5
        3        3         2

Quiero que las sumas para cada columna.

Los resultados finales deben ser:

Answer1Sum  Answer2Sum  Answer2Sum

8           7           8

Esto no funciona:

from survey in SurveyAnswers
select new
{
    Answer1Sum = survey.Sum(),
    Answer2Sum = survey.Sum(),
    Answer3Sum = survey.Sum()
 }

¿Fue útil?

Solución

Que este trabajo:

var answer1Sum = SurveyAnswers.Sum( survey => survey.Answer1 );
var answer2Sum = SurveyAnswers.Sum( survey => survey.Answer2 );
var answer3Sum = SurveyAnswers.Sum( survey => survey.Answer3 );

Otros consejos

A VB.NET soltuion a esta respuesta para cualquier persona que lo necesita es el siguiente:

Dim Answer1Sum = SurveyAnswers.Sum(Function(survey) survey.Answer1)
Dim Answer2Sum = SurveyAnswers.Sum(Function(survey) survey.Answer2)
Dim Answer3Sum = SurveyAnswers.Sum(Function(survey) survey.Answer3)
SurveyAnswers.Sum(r => r.Answer1);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top