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 é a porcentagem de visitantes repetidos para cada tipo de programa na segunda metade de 2021?
 ###Tabelas: 
CREATE SCHEMA visitors; CREATE TABLE visitors (visitor_id INT, program_type VARCHAR(255), visit_date DATE); INSERT INTO visitors (visitor_id, program_type, visit_date) VALUES (1, 'Exhibition', '2021-07-01'), (2, 'Workshop', '2021-08-12'), (3, 'Exhibition', '2021-09-15');
SELECT program_type, COUNT(DISTINCT visitor_id) as total_visitors, COUNT(DISTINCT CASE WHEN visit_date < DATEADD(year, -1, GETDATE()) THEN visitor_id END) as repeat_visitors, 100.0 * COUNT(DISTINCT CASE WHEN visit_date < DATEADD(year, -1, GETDATE()) THEN visitor_id END) / COUNT(DISTINCT visitor_id) as repeat_percentage FROM visitors WHERE visit_date >= '2021-07-01' AND visit_date < '2022-01-01' GROUP BY program_type;