Guys,
It turns out that we could just write a SQL snippet and wrap up with paranthesis as it is an expression.
Below is working
(select case
when PureYOA = '[?]' then '[?]'
when PureYOA < left(convert(varchar,C.MonthKey),4) then PureYOA
else left(convert(varchar,monthkey),4) end
from dwdim.dimfinancials A inner join dwfact.factpremiumcash B on
A.financialskey = B.FinancialsKey inner join dwdim.dimdate C on B.transactiondatekey = C.DateKey)
If there is any better way of doing it, please let me know.