Escreva o códigoPráticaSQL
Alunos distintos por curso
Contar alunos distintos por curso com COUNT DISTINCT.
Devolva id_curso e alunos nessa ordem, uma linha por id_curso da tabela matriculas. A coluna alunos conta valores distintos de id_aluno com COUNT(DISTINCT id_aluno).
Revisa aula 14 (10/09)
Solução comentada
Verifique uma tentativa sua para liberar a solução.
SELECT id_curso, COUNT(DISTINCT id_aluno) AS alunos FROM matriculas GROUP BY id_cursoDISTINCT dentro do COUNT elimina repetições de id_aluno. O GROUP BY id_curso separa por curso. Assim COUNT(DISTINCT id_aluno) conta cada aluno uma vez por curso.
Erro comum: Usar COUNT(*) e contar o mesmo aluno duas vezes em vez de distintos.
Tabelas
matriculas 12 linhas
| id | id_aluno | id_curso | preco | data_matricula |
|---|---|---|---|---|
| 1 | 101 | python | 200 | 2026-09-05 |
| 2 | 101 | python | 200 | 2026-09-15 |
| 3 | 103 | dados | 350 | 2026-08-20 |
| 4 | 101 | dados | 350 | 2026-09-21 |
| 5 | 104 | web | 150 | 2026-09-10 |
| 6 | 105 | web | 150 | 2026-09-11 |
| 7 | 106 | web | NULL | 2026-09-12 |
| 8 | 107 | python | 200 | 2026-08-30 |
| 9 | 108 | dados | 350 | 2026-09-25 |
| 10 | 109 | ia | 500 | 2026-09-21 |
| 11 | 110 | ia | 500 | 2026-09-22 |
| 12 | 102 | ia | 500 | 2026-07-15 |
Sua consulta
Escreva sua solução e verifique quando quiser.