I din nuværende forespørgsel tæller du antallet af rækker i sygdomstabellen, én gang ved at bruge kolonnen condition_id, én gang ved at bruge kolonnen person_id. Men antallet af rækker er det samme - det er derfor, du får 1 som resultat.
Jeg tror, du skal finde antallet af forskellige værdier for disse kolonner. Dette kan gøres ved at bruge count distinct:
select (COUNT(DISTINCT condition_id)/COUNT(DISTINCT person_id)) as prevalence
from disease
where condition_id=12345;