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 proporção de profissionais de saúde mental para pacientes em áreas rurais, ordenada por estado e condado?
 ###Tabelas: 
CREATE TABLE mental_health_professionals (professional_id INT, professional_name VARCHAR, specialty VARCHAR, rural_county VARCHAR, state VARCHAR); INSERT INTO mental_health_professionals (professional_id, professional_name, specialty, rural_county, state) VALUES (1, 'Dr. Patel', 'Psychiatry', 'County Z', 'California'); INSERT INTO mental_health_professionals (professional_id, professional_name, specialty, rural_county, state) VALUES (2, 'Dr. Kim', 'Psychology', 'County W', 'Texas'); CREATE TABLE patients (patient_id INT, age INT, has_mental_health_condition BOOLEAN, gender VARCHAR, state VARCHAR, county VARCHAR); INSERT INTO patients (patient_id, age, has_mental_health_condition, gender, state, county) VALUES (1, 45, true, 'Female', 'California', 'County Z'); INSERT INTO patients (patient_id, age, has_mental_health_condition, gender, state, county) VALUES (2, 50, true, 'Male', 'Texas', 'County W');
SELECT rural_county, state, COUNT(*) FILTER (WHERE has_mental_health_condition)::FLOAT / COUNT(*) AS ratio FROM patients JOIN mental_health_professionals ON patients.county = mental_health_professionals.rural_county AND patients.state = mental_health_professionals.state GROUP BY rural_county, state ORDER BY state, ratio DESC;