Hi all,
While executing a query I ma getting an error as
Error converting data type varchar to numeric
.I have found out that the problem is with decimal data type.I have tried various ways but nothing helped.Any help will be really appreciated .
What I have tried:
SELECT ISNULL(cast((SUM(b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q))*1.5625 AS DECIMAL(18, 2)),0.00) as Pee from
(select (case when IN017_01 IS NOT NULL AND IN017_01 != '' then 1 else 0 end )as b ,
(case when IN016_01 IS NOT NULL AND IN016_01 != '' then 1 else 0 end )as c ,
(case when IN022_01 IS NOT NULL AND IN022_01 != '' then 1 else 0 end )as d ,
(case when in068_04 IS NOT NULL AND in068_04 != '' then 1 else 0 end )as e ,
(case when in068_05 IS NOT NULL AND in068_05 != '' then 1 else 0 end )as f ,
(case when CAST(in068_06 AS DECIMAL(18,2)) IS NOT NULL AND CAST(in068_06 AS DECIMAL(18,2)) != '' then 1 else 0 end)as g ,
(case when in068_07 IS NOT NULL AND in068_07 != '' then 1 else 0 end )as h ,
(case when in068_08 IS NOT NULL AND in068_08 != '' then 1 else 0 end )as i ,
(case when CAST(in068_09 AS DECIMAL(18,2)) IS NOT NULL AND CAST(in068_09 AS DECIMAL(18,2)) != '' then 1 else 0 end)as j ,
(case when in068_10 IS NOT NULL AND in068_10 != '' then 1 else 0 end )as k,
(case when CAST(in068_11 AS DECIMAL(18,2)) IS NOT NULL AND CAST(in068_11 AS DECIMAL(18,2)) != '' then 1 else 0 end)as l ,
(case when in068_12 IS NOT NULL AND in068_12 != '' then 1 else 0 end )as m ,
(case when CAST(in068_13 AS DECIMAL(18,2)) IS NOT NULL AND CAST(in068_13 AS DECIMAL(18,2)) != '' then 1 else 0 end)as n,
(case when CAST(in068_15 AS DECIMAL(18,2)) IS NOT NULL AND CAST(in068_15 AS DECIMAL(18,2)) != '' then 1 else 0 end)as o ,
(case when CAST(in068_16 AS DECIMAL(18,2)) IS NOT NULL AND CAST(in068_16 AS DECIMAL(18,2)) != '' then 1 else 0 end)as p ,
(case when IN027_02 IS NOT NULL AND IN027_02 != '' then 1 else 0 end )as q from IN068 WHERE IN068.IN027_02='60006' ) as t