none
Converter Sql para Linq ....... RRS feed

  • Pergunta


  • Olá amigos,
    Gostaria de saber como passar essa query para o Linq, já vi varios exemplos, mas todos estam usando duas tabela, no meu caso e apenas uma ..

    Select
      (Sum(Jogabilidade) + Sum(Grafico) + Sum(Audio) + Sum(Diversao) + Sum(Desafio)) / (Count(<TotalDeUsuarios>) * 5)
    From votacao
    Where GameID = 1

    se alguem puder me ajudar ......
    sexta-feira, 10 de outubro de 2008 11:57

Todas as Respostas


  • Olá amigos, eu achei uma solução, mas não sei se e a melhor,

    from orders in Votacaos where orders.GameID == 1
    group orders by orders.GameID
    into f
    select new
    {
      TotalVotos = ((f.Sum(x => x.Jogabilidade) + f.Sum(x => x.Grafico) + f.Sum(x => x.Audio) + f.Sum(x => x.Diversao) + f.Sum(x => x.Desafio)) / (f.Count() * 5))
    }

    o vezes 5 e total de colunas
    Jogabilidade, Grafico, Audio, Diversao, Desafio a query que ele gerou foi essa

    SELECT ([t1].[value] + [t1].[value2] + [t1].[value3] + [t1].[value4] + [t1].[value5]) / (CONVERT(Decimal(29,4),[t1].[value6] * @p1)) AS [TotalVotos]
    FROM (
        SELECT SUM([t0].[Jogabilidade]) AS [value], SUM([t0].[Grafico]) AS [value2], SUM([t0].[Audio]) AS [value3], SUM([t0].[Diversao]) AS [value4], SUM([t0].[Desafio]) AS [value5], COUNT(*) AS [value6]
        FROM [Votacao] AS [t0]
        WHERE [t0].[GameID] = @p0
        GROUP BY [t0].[GameID]
        ) AS [t1]

    se alguem puder me responder .... agradeço ........

    sexta-feira, 10 de outubro de 2008 13:07