Как упомянул Smor, try_convert()
или try_cast()
не выдаст ошибку, если преобразование завершится неудачей ... вместо этого он вернет NULL
.
SELECT HCI.variationID
, isnull( try_convert(numeric(32,2),HCI.ContractRef), 0) as targethrs
FROM pcms.Variation_New HCI
Реальная проблема заключается в том, что выесть данные, которые не могут быть преобразованы.Чтобы идентифицировать эти записи для исправления:
Select *
From pcms.Variation_New HCI
Where try_convert(numeric(32,2),HCI.ContractRef) is null
and HCI.ContractRef is not null