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: Quantos projetos foram concluídos em 'public_works' e 'civil_projects' entre 2019-01-01 e 2021-12-31?
 ###Tabelas: 
CREATE TABLE public_works (id INT, project_name VARCHAR(50), location VARCHAR(50), start_date DATE, end_date DATE, total_cost FLOAT); INSERT INTO public_works (id, project_name, location, start_date, end_date, total_cost) VALUES (1, 'Road Repaving', 'New York', '2020-01-01', '2020-12-31', 500000.00), (2, 'Bridge Construction', 'California', '2019-05-01', '2021-03-31', 2000000.00); CREATE TABLE civil_projects (id INT, project_name VARCHAR(50), location VARCHAR(50), start_date DATE, end_date DATE, total_cost FLOAT); INSERT INTO civil_projects (id, project_name, location, start_date, end_date, total_cost) VALUES (1, 'Dam Construction', 'Texas', '2018-05-01', '2020-01-15', 1500000.00), (2, 'Water Treatment Plant Upgrade', 'Florida', '2019-06-01', '2021-03-31', 800000.00);
SELECT COUNT(*) FROM (SELECT * FROM public_works WHERE start_date >= '2019-01-01' AND end_date <= '2021-12-31' UNION ALL SELECT * FROM civil_projects WHERE start_date >= '2019-01-01' AND end_date <= '2021-12-31') AS completed_projects;