Cela dépend de la version que vous utilisez, mais j'ai eu le même problème et ->distinct() a fonctionné pour moi.
Doctrine_Query::create()
->select('rec.city')->distinct()
->from('Records rec')
->where("rec.state = '$state'")
->execute();