Si entiendo correctamente, desea que el último valor sea uno de los cuatro que especifica (es decir, no 'NONE'
). Las funciones de ventana son probablemente la solución más simple:
select t.*
from (select t.*,
first_value(value) over (partition by uaid order by id desc) as current_value
from t
) t
where risk_factor <> 'NONE';