Hello,

I have a table with many columns including *Claims* and *GEP*. I would like to add a computed column called *LossRatio* which is simply (Claims/GEP)*100. I tried to do this as follows:

ALTER TABLE LossRatios ADD LossRatio AS (Claims/GEP)*100 PERSISTED

But this gave the following error message:

Divide by zero error encountered.

The statement has been terminated.

I then tried to get round this by using CASE WHEN as follows:

ALTER TABLE LossRatios

ADD LossRatio

AS (SELECT CASE WHEN GEP=0 THEN NULL

ELSE((Claims/GEP)*100) END) PERSISTED

This method gave the following error:

Subqueries are not allowed in this context. Only scalar expressions are allowed.

I then tried to use NULLIF to get round the problem as follows:

ALTER TABLE LossRatios ADD LossRatio AS NULLIF((Claims/GEP)*100,0) PERSISTED

But this gave the same error message as my first attempt. Is there a way to allow for the divide by zero error when creating computed columns?

Many thanks

Chris