포스트그릴 SQL 형변환 쿼리 질문좀하겠습니다 0 1 3,762

by 겸둥이k [DB 기타] postreSql [2019.01.03 18:09:54]


SELECT 
                            COALESCE(B.UP_MYUN_DONG, '구역명없음') DONGNAME ,
                            SUBSTR(INSPECT_DATE, 1, 4) INSPECT_DATE,
                            SUM(CASE WHEN ALLUVIAL_ROCK='01'THEN 1 ELSE 0 END) A_COUNT, 
                            SUM(CASE WHEN ALLUVIAL_ROCK='01'THEN 1 ELSE 0 END) B_COUNT, 
                            SUM(CASE WHEN ALLUVIAL_ROCK='01'THEN YEAR_USE_AMT ELSE 0 END) A_SUM, 
                            SUM(CASE WHEN ALLUVIAL_ROCK='02'THEN YEAR_USE_AMT ELSE 0 END) B_SUM
                    FROM 
                            groundwaterigs1.gdb_well_info_new A

 

쿼리가길어 부분적으로 소스를 올리겠습니다 YEAR_USE_AMT 해당 테이블에있는 컬럼입니다

여기서 에러 내용이 ERROR: 오류: CASE 자료형 integer 와 character varying 는 서로 매치되지 않습니다 LINE 17: SUM(CASE WHEN ALLUVIAL_ROCK='01'THEN YEAR_USE_AMT ... 인데 오라클에서는 잘되는데 포스트그릴에서는 안되네요 ㅠ YEAR_USE_AMT 이건 해당 오라클에서 varchar2로 되어있는데 자료형이 맞지 않다고 할까요 ㅠ

by 마농 [2019.01.03 19:17:55]

자료형을 맞춰주세요.
 - 변경전 : YEAR_USE_AMT
 - 변경후 : YEAR_USE_AMT::NUMERIC

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입