Background Image

FORUM

2022.11.07 15:11

큐부리드 함수 문의

조회 수 116 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부


* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.

OS
 Linux 64bit
CUBRID Ver.
11.2.1
CUBRID TOOL Ver.
sqlgate
응용 환경(API)
 


* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.

 

에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------

함수 사용이 많고 쿼리문 작성시 함수 때문에 에러가 너무 자주나 

임시 테이블로 함수부분만 분리하여 쿼리를 만들었습니다. 

(함수를 사용한건 조인이 너무많고 목록 데이터를  포문으로 가공하는 경우가 많아  어쩔수 없는 부분이 있습니다. )

이렇게 해도 쿼리 성공 여부가 항상 일정하지가 않습니다. 계속 잘 실행되다가도

stored procedure .... 에러가 발생합니다. 왜 그럴까요???

 

*함수 자바 파일 첨부하였습니다. 

 

with tmp as (
select 
reg_no, rank_no,
GET_CG_WON_SML_RN(reg_no, rank_no) as GET_CG_WON_SML_RN,
GET_CD_NM('CG_DM',reg_o_cd) as CG_DM_GET_CD_NM,
GET_CG_RD_SITE_NMS(reg_no, rank_no) as GET_CG_RD_SITE_NMS,
GET_CG_SITE_CHGYN(reg_no, rank_no) as  GET_CG_SITE_CHGYN,
GET_CG_MK_CHGYN(reg_no, rank_no)as GET_CG_MK_CHGYN,
GET_CG_DUP_MINE_CHGYN(reg_no, rank_no) as GET_CG_DUP_MINE_CHGYN,
GET_CG_WON_MK_NMS(reg_no, rank_no) as GET_CG_WON_MK_NMS,
GET_CG_RD_WON_MK_NMS(reg_no, rank_no) as GET_CG_RD_WON_MK_NMS,
GET_CG_DUPMINEH_RN(reg_no, rank_no) as GET_CG_DUPMINEH_RN,
GET_CG_RD_DUPMINEH_RN(reg_no, rank_no) as GET_CG_RD_DUPMINEH_RN
from cg_won_his 
where reg_no='000125'
)


select 
    FMT_DT(REPLACE(acc_dt,'-',''),'M') as acc_dt, 
       IF(CHAR_LENGTH(RTRIM(armk_lst)) > 0,'부'||REPLACE(armk_lst,',',', 부'),'') as R_ARMK_LST,
       IF(CHAR_LENGTH(RTRIM(acc_no)) > 0,'제'|| to_number(acc_no) ||'호','') as ACC_NO_COMBO, 
       decode(armk_no,'0','',IF(CHAR_LENGTH(RTRIM(armk_no)) > 0,'부기'|| armk_no ||'호','')) as R_ARMK_NO, 
       FMT_DT(replace(a.reg_dt,'-',''),'M') as reg_dt1,
       a.rank_no,  
       IF(CHAR_LENGTH(RTRIM(lnd_r)) > 0,'제'|| lnd_r ||'호','') as LND_COMBO,
       IF(CHAR_LENGTH(RTRIM(dt_to)) > 0,'존속기간   ' || REPLACE(FMT('D', dt_fr),'-','/') || '~' || REPLACE(FMT('D',dt_to),'-','/')||'   '||  term_yr ||'개년','') as dt_combo, 
       IF(CHAR_LENGTH(RTRIM(GET_CG_WON_MK_NMS)) > 0,GET_CG_WON_MK_NMS,'') as MK_COMBO,
       GET_CG_WON_SML_RN as F_SML_NM_RN,
       CG_DM_GET_CD_NM REG_O_CD_NM, 
       area_chg,
       dt_chg,
       IF(CHAR_LENGTH(RTRIM(reg_area)) > 0,'등록면적    '||reg_area|| decode(area_gbn,'1','평','0','ha'),'') as REG_AREA_GBN,
       GET_CG_RD_SITE_NMS as SITE_NM,
       GET_CG_SITE_CHGYN as SITE_CHG_YN,
       GET_CG_MK_CHGYN as MK_CHG_YN,
       REPLACE(GET_CG_DUPMINEH_RN,',','') as DUP_REG_NO_NMS,
       GET_CG_DUP_MINE_CHGYN as DM_CHG_YN,
       IF(CHAR_LENGTH(RTRIM(jk_no)) > 0,'조광권번호   '|| jk_no,'')  as jk_no_nm,
       area_dsp, land_dsp, sml_chg, term_dsp,  jk_dsp, jk_chg,
       ers_dsp, ers_chg,
       to_number(a.reg_no) as reg_no,
       jk_no,
       IF(
             area_dsp='1' and  agbn_chg='1' or
             area_dsp='1' and  area_chg='1' or
             land_dsp='1' and  land_chg='1' or 
             land_dsp='1' and  sml_chg='1' or 
             term_dsp='1' and  dt_chg='1' or  
             jk_dsp='1' and jk_chg='1' or 
             ers_dsp='1' and ers_chg='1' or 
             GET_CG_DUP_MINE_CHGYN='1' or 
             GET_CG_SITE_CHGYN ='1' or 
             GET_CG_MK_CHGYN='1', '#','')||seq_no as seq_no,
       IF(
             area_dsp='1' and  agbn_chg='1' or
             area_dsp='1' and  area_chg='1' or
             land_dsp='1' and  land_chg='1' or 
             land_dsp='1' and  sml_chg='1' or 
             term_dsp='1' and  dt_chg='1' or  
             jk_dsp='1' and jk_chg='1' or 
             ers_dsp='1' and ers_chg='1' or 
             GET_CG_DUP_MINE_CHGYN='1' or 
             GET_CG_SITE_CHGYN ='1' or 
             GET_CG_MK_CHGYN='1', '#','')||chg_cnt as chg_cnt,  
       IF(
             area_dsp='1' and  agbn_chg='1' or
             area_dsp='1' and  area_chg='1' or
             land_dsp='1' and  land_chg='1' or 
             land_dsp='1' and  sml_chg='1' or 
             term_dsp='1' and  dt_chg='1' or  
             jk_dsp='1' and jk_chg='1' or 
             ers_dsp='1' and ers_chg='1' or 
             GET_CG_DUP_MINE_CHGYN='1' or 
             GET_CG_SITE_CHGYN ='1' or 
             GET_CG_MK_CHGYN='1', '#','')||
             CG_DM_GET_CD_NM||IF(CG_DM_GET_CD_NM = '','',',')||
       IF(GET_CG_SITE_CHGYN='1','#','')||IF(GET_CG_RD_SITE_NMS  = '','','소재지,')||
       GET_CG_RD_SITE_NMS||
       IF(term_dsp='0','',IF(dt_chg='1','#','')||
       IF(CHAR_LENGTH(RTRIM(dt_to)) > 0,'존속기간   ' ||FMT('D', dt_fr) || '~' ||FMT('D',dt_to)||'   '||  term_yr ||'개년','') )||
       IF(CHAR_LENGTH(RTRIM(dt_to)) > 0,'',',')||
       IF(GET_CG_MK_CHGYN='1','#','')||
       IF(GET_CG_WON_MK_NMS  = '','','광종명,')||
       IF(GET_CG_MK_CHGYN='1','#','')||GET_CG_RD_WON_MK_NMS||
       IF(GET_CG_WON_MK_NMS  = '','',',')||
       IF(jk_dsp='0','',IF(jk_chg='1','#',''))||IF(jk_dsp='0' or jk_no='','',',')||
       IF(area_dsp='0','',IF(area_chg='1','#','')||
       IF(CHAR_LENGTH(RTRIM(reg_area)) > 0,'등록면적    '||reg_area||decode(area_gbn,'1','평','0','ha'),''))||
       IF(area_dsp='0' or reg_area='','',',')||
       IF(
            land_dsp='1' and land_chg='1' or
            land_dsp='1' and sml_chg='1', '#','')||
            IF(
            land_dsp='1' , 
            '지적 '|| 
            (SELECT u.cdnm FROM unicode u WHERE u.gcd = 'G' AND u.cd = a.lnd_r)
            || '  '|| lnd_no ||' 호  '||GET_CG_WON_SML_RN,'')||
            IF(land_dsp='0' or lnd_r='','',',')||
       IF(GET_CG_DUP_MINE_CHGYN='1','#','')||
       IF(GET_CG_DUPMINEH_RN  = '','','중복광구,')||GET_CG_RD_DUPMINEH_RN as won_combo,
       etc
from cg_won_his a, tmp b
where a.reg_no=b.reg_no
and a.rank_no = b.rank_no
AND a.reg_no = '000125'
and a.rank_no>1;

 

  • ?
    큐브리드_김주현 2022.11.07 15:56
    큐브리드를 이용해 주셔서 감사합니다.

    올려주신 select에서 사용하는 java SP함수들이 많고, 어디서 에러가 발생하는지 명확하지 않아 이것을 모두 확인하기는 어려울 것 같습니다.

    $CUBRID/java0.log에 관련 log가 남겨지니 이를 확인하여 java 코드를 디버깅해보셔야 할 것 같습니다.

    많은 도움이 되질 못해 죄송합니다.
    감사합니다.
  • ?
    오명환 2022.11.07 16:01
    11.2.2 버전으로 패치 업그레이드를 진행하시고 테스트 부탁드립니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 51
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4458
794 쿼리 에러 1 secret 김수민 2014.11.27 11
793 쿼리 오류 (컬럼 조회 순서에 따라 오류) 7 file ozro 2022.08.11 204
792 쿼리 오류 질문 입니다. 1 초보 2010.03.24 13830
791 쿼리 오류 질문입니다. 1 혁이랍니다 2017.10.11 446
790 쿼리 오류가 뭐때문에 나오는지 이유를 모르겠네요 3 펌피 2017.09.18 4286
789 쿼리 오류인데 어쩌해야할지 3 노닝 2010.04.13 12779
788 쿼리 작성에 관한 문의 드립니다. 2 prometheus 2012.04.25 8447
787 쿼리 조회시 인덱스를 타지 않고 full scan 으로 나오는 경우 질문드립니다. 3 file 덴드로비움 2017.11.20 4355
786 쿼리 조회오류인가요?? 2 다음 2021.03.11 205
785 쿼리 질문 5 헬리스 2015.08.28 9092
784 쿼리 질문드립니다. 1 secret 질문있어요 2013.02.21 8
783 쿼리 질의시 소수점 자리 수 처리 관련 1 dashbell 2014.02.14 21998
782 쿼리 취소 API 는 무엇인가요? 2 초보대왕 2010.09.30 8525
781 쿼리 튜닝 및 실행계획 관련 문의 드립니다. 3 file kikiki767 2022.12.23 137
780 쿼리 플랜 cardinality, cost 이상 1 parknnna 2023.02.16 184
779 쿼리 확인 부탁 드립니다. 1 Philip Park 2010.01.08 9595
778 쿼리결과에 대한 문의 드립니다. 3 file redef 2013.07.01 6269
777 쿼리로 시스템 파라미터 변경 시 1 봉보로봉봉 2017.07.26 398
776 쿼리문에 캐릭터 셋을 바꾸 조회하는 함수가 큐브리드에도 있을까요? 1 덴드로비움 2017.10.19 847
775 쿼리문으로 컬럼의 데이터 타입을 구할 수 있나요? 3 mon 2020.04.13 1589
Board Pagination Prev 1 ... 156 157 158 159 160 161 162 163 164 165 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales