Contar valores unicos MySQL

11/04/2017

0

Pessoa preciso de ajuda para contar valores únicos em uma tabela. eh o seguinte, supondo q tenhamos a seguinte tabela

+--------------+--------------+--------------+--------------+
| Codigo | Nome | Setor | Nivel |
+--------------+--------------+--------------+--------------+
| 001 | Fabio | Adm | A |
+--------------+--------------+--------------+--------------+
| 002 | Maicon | Fab | A |
+--------------+--------------+--------------+--------------+
| 003 | Rose | Adm | A |
+--------------+--------------+--------------+--------------+
| 004 | André | Adm | B |
+--------------+--------------+--------------+--------------+
| 005 | Gilmar | Fab | B |
+--------------+--------------+--------------+--------------+
| 006 | Gaby | Adm | C |
+--------------+--------------+--------------+--------------+

preciso saber quantos funcionário tem em cada setor (essa parte é simples usando count e group by Setor) e também qtd níveis de func. em kada setor, pela tabela acima preciso q retorne o seguinte resultado

+----------+-------+------+
| Setor | Func | Niv. |
+----------+-------+------+
| Adm | 4 | 3 |
+----------+-------+------+
| Fab | 2 | 2 |
+----------+-------+------+
ou seja o Setor Adm tem 4 funcionarios estes em 3 níveis diferentes ja o setor Fab tem 2 funcionários em 2 níveis diferentes.
Fabiano Gonzaga

Fabiano Gonzaga

Responder

Post mais votado

12/04/2017

tente assim:
select setor,count(nome) as func, count(distinct nivel) niv
from empresa group by setor

Fernando C

Fernando C
Responder

Mais Posts

12/04/2017

Fabiano Gonzaga

akabei de consegui resolver (exatamente desta maneira) de qualquer forma muito obrigado, e fica ai a dica para o pessoal!
Responder

26/04/2017

André Gomes

Muito obrigado Fernando,
eu tmb estava com esta dúvida.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar