Abaixo está uma instrução que descreve uma tarefa de geração de SQL, combinada com uma entrada que fornece mais contexto sobre os esquemas de tabela disponíveis. Escreva o código SQL que responda adequadamente à solicitação
 ###Instrução: Contar o número de funcionários por departamento e cargo na empresa de mineração.
 ###Tabelas: 
CREATE TABLE department (id INT, name VARCHAR(255)); CREATE TABLE employee (id INT, name VARCHAR(255), department VARCHAR(255), role VARCHAR(255), salary INT); INSERT INTO department (id, name) VALUES (1, 'Mining'), (2, 'Engineering'), (3, 'Human Resources'); INSERT INTO employee (id, name, department, role, salary) VALUES (1, 'John Doe', 'Engineering', 'Manager', 80000), (2, 'Jane Smith', 'Engineering', 'Engineer', 70000), (3, 'Mike Johnson', 'Engineering', 'Technician', 60000), (4, 'Sara Connor', 'Mining', 'Manager', 85000), (5, 'Tom Williams', 'Mining', 'Laborer', 55000);
SELECT d.name as department, e.role as role, COUNT(e.id) as num_employees FROM department d JOIN employee e ON d.name = e.department GROUP BY d.name, e.role;