Showing results for tags 'groupby'. - Fórum iMasters
[Resolvido] Sql Server - utilização da função group by com "case" no select
Wilson David Marques posted a question in Perguntas e respostas rápidas
Boa tarde pessoal, sou novo por aqui! espero que estejam todos bem! tenho um problema e se alguém conseguisse me ajudar eu ficaria muito grato. observem minha query abaixo, estou utilizando case como condição para uma coluna e no final quero agrupar somente pelos dois primeiros campos CODIGOREFERENCIA e NOME porém o SQL exige que utilizemos os outros dois campos que estão dentro do case. como solucionar? pois não da para utilizar o apelido da nova coluna que contém o case no gropu By Ex.: 'SAIDA_ENTRADA' Abraços e tenham um ótimo dia! SELECT B.CODIGOREFERENCIA, B.NOME, SUM(A.QUANTIDADE), CASE WHEN A.SALDOATUAL < A.SALDOANTERIOR THEN 'SAIDA' ELSE 'ENTRADA' END AS 'SAIDA_ENTRADA' FROM PD_MOVIMENTACAOVARIACAO AS A LEFT OUTER JOIN PD_PRODUTOS AS B ON (B.HANDLE = A.PRODUTO) LEFT OUTER JOIN PD_ALMOXARIFADOS AS C ON (C.HANDLE = A.ALMOXARIFADOORIGEM) LEFT OUTER JOIN PD_ALMOXARIFADOS AS D ON (D.HANDLE = A.ALMOXARIFADODESTINO) LEFT OUTER JOIN GN_PESSOAS AS E ON (E.HANDLE = A.PESSOA) LEFT OUTER JOIN Z_GRUPOUSUARIOS AS F ON (F.HANDLE = A.USUARIO) LEFT OUTER JOIN GN_OPERACOES AS G ON (G.HANDLE = A.OPERACAO) WHERE DATAHORAMOVIMENTACAO BETWEEN CONVERT(DATETIME, '01/01/2017 00:00:00', 103) AND CONVERT(DATETIME, '10/01/2017 05:00:00', 103) AND B.GRUPO IS NOT NULL GROUP BY B.CODIGOREFERENCIA, B.NOME