하려는것

-- IF A00591TEXT <> '' THEN (A00591TGT - A00184TGT) ELSE 0


A00591TEXT  -> MAX(CASE JJ.CHAR_ID WHEN 'A00591' THEN JJ.SPEC_TEXT END) A00591TEXT

A00591TGT ->  MAX(CASE JJ.CHAR_ID WHEN 'A00184' THEN JJ.TGT END) AS A00184TGT

A00591TGT ->  MAX(CASE JJ.CHAR_ID WHEN 'A00591' THEN JJ.TGT END) AS A00591TGT


이렇게 됩니다




  case when convert(varchar(50), ISNULL(MAX(CASE JJ.CHAR_ID WHEN 'A00591' THEN JJ.SPEC_TEXT END),'')) = '' then convert(varchar(50),isnull(MAX(CASE JJ.CHAR_ID WHEN 'A00591' THEN JJ.TGT END),0) - isnull(MAX(CASE JJ.CHAR_ID WHEN 'A00184' THEN JJ.TGT END),0))
  else 0 end num_19,

이렇게 select문을 만들어보니


subtract 연산자에 대한 피연산자 데이터 형식 varchar이(가) 잘못되었습니다.

이런 에러가 뜨는데..


어떻게 수정해야 할까오..