Uso do count como teste
12/04/2018
0
Gostaria de saber se existe uma forma de usar o valor do count como teste.
EX: em uma tabela de funcionário, a funcionaria Maria tem dois cargos, Efetivo e comissionado. eu quero usar count para contar a quantidade de linhas e após vou fazer um case para determinar caso tenha 2 linhas me retorne tem dois cargos ou caso o count me retorne 1 linha, diga-me que tenha um cargo
Demetrio Lopes
Post mais votado
13/04/2018
Bom dia Demétrio,
É isso que você quer fazer?
SELECT NOME_FUNCIONARIO, 'TEM '+CAST(COUNT(*) AS VARCHAR)+' CARGO(S)' FROM TABELA_FUNCIONARIO GROUP BY NOME_FUNCIONARIO
Abraços,
Lincon Silva
Mais Posts
16/04/2018
Demetrio Lopes
Não entendi por que você usa o cast. Enfim, o problema é assim: Tem funcionários que tem dois cargos, e peguei o nome de um funcionário e usei o count para contar as linhas que aparece (ex: se o funcionario tiver apenas um cargo, vai mostrar apenas uma linha, etc..) e após, peguei o valor do count para determinar através de um case se o funcionário tem um ou dois cargos. mas quando o select chega no case, só mostra um valor.
MUITO OBRIGADO!
16/04/2018
Demetrio Lopes
Muito obrigado
16/04/2018
Lincon Silva
Usei o Cast para poder unir com o texto, visto que o retorno do count é inteiro, por isso dei cast para varchar.
O seu case deve estar errado, deve ter um campo que tá fora da margem do group by, tens como postar aqui.
Até agora não vi a necessidade de case no select, pois a query acima atende.
Clique aqui para fazer login e interagir na Comunidade :)