Не познавам ColdFusion, но мисля, че разбрах логиката. Приоритетът е текущ> история> различен. Не е ясно кой ред е правилен, когато има два current редове или само different редове, така че маркирам ред с минимум valid_from в такъв случай. Ако не ви интересува, можете да пропуснете този параметър (премахнете unit_valid_from от row_number order by на клауза):
select units.*,
case when 1 =
row_number() over (
partition by org_id
order by case origin when 'current' then 1 when 'history' then 2 else 3 end,
unit_valid_from ) then 1 else 0 end as is_correct_version
from units