Contar valores unicos MySQL
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.
+--------------+--------------+--------------+--------------+
| 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
Curtidas 0
Melhor post
Fernando C
12/04/2017
tente assim:
select setor,count(nome) as func, count(distinct nivel) niv from empresa group by setor
GOSTEI 3
Mais Respostas
Fabiano Gonzaga
11/04/2017
akabei de consegui resolver (exatamente desta maneira) de qualquer forma muito obrigado, e fica ai a dica para o pessoal!
GOSTEI 0
André Gomes
11/04/2017
Muito obrigado Fernando,
eu tmb estava com esta dúvida.
eu tmb estava com esta dúvida.
GOSTEI 0