* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
|
Window7 32bit, Linux 64bit 등 |
|
[cubrid_rel] 수행 결과 |
|
[도움말]-[버전정보] 확인 |
|
java, php, odbc 등 입력 |
* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 | 재현 가능한 Source와 SQL |
관련 테이블(인덱스, 키정보 포함) 정보 | CUBRID 홈 디렉토리 아래 log 디렉토리 압축 |
-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------
첨부한 사진파일과같이 쿼리를 날렸을경우
계속해서 attempt to divide by zero 에러가 나옵니다..
분명히 != 0 , != '', is not null
등도 넣었는데 왜 0으로 나눈다는건지 알수가없어요..
결과값에서도 0은 없습니다.
서브쿼리만 따로 돌렸을떄는 검색결과가 정상적으로 나옵니다.
WHERE 조건을 뺴고 검색해도 검색이 잘되지만..
WHERE AMT_VAL = '273140' 을 쓰면 위 에러가 나오고있습니다.
SELECT ACPT_NO, (DEBT_AMT/CAPIAL_AMT) AMT_VAL
FROM
(
SELECT ACPT_NO, TO_NUMBER(DEBT_AMT) DEBT_AMT, TO_NUMBER(CAPIAL_AMT) CAPIAL_AMT
FROM DISCLOSURE_NEW
WHERE FINANCIAL_YY = '2021'
AND PROC_CO = '08'
AND CAPITAL_AMT != 0
AND DEBT_AMT != ''
AND CAPITAL_AMT != ''
AND CAPITAL_AMT IS NOT NULL
)
WHERE (DEBT_AMT/CAPIAL_AMT) = '273140'
혹시나 싶어 위와 같이 해보았는데도
WHERE (DEBT_AMT/CAPIAL_AMT) = '273140'
만 사용하면 동일한 에러가 나옵니다.
마지막 WHERE 부분에 IF(CAPIAL_AMT=0, 1,CAPIAL_AMT)) 과 같이 처리해보기도 했는데 이러면
Empty string not allowed here 라는 에러가 나옵니다.
이유가뭐고.. 어떻게 검색을 할수 있을까요?
도와주세요.