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: Qual é o número total de policiais e bombeiros por turno em cada distrito?
 ###Tabelas: 
CREATE TABLE districts (did INT, name VARCHAR(50), PRIMARY KEY(did)); CREATE TABLE shifts (sid INT, start_time TIME, end_time TIME, PRIMARY KEY(sid)); CREATE TABLE district_personnel (pid INT, did INT, position ENUM('police_officer', 'firefighter'), sid INT, PRIMARY KEY(pid), FOREIGN KEY (did) REFERENCES districts(did), FOREIGN KEY (sid) REFERENCES shifts(sid));
SELECT d.name, s.sid, SUM(IF(dp.position = 'police_officer', 1, 0)) as num_police_officers, SUM(IF(dp.position = 'firefighter', 1, 0)) as num_firefighters FROM districts d JOIN district_personnel dp ON d.did = dp.did JOIN shifts s ON dp.sid = s.sid GROUP BY d.name, s.sid;