[Resolvido] Sql Server - utilização da função group by com "case" no select
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.NOMEDiscussão (4)
Carregando comentários...