Background Image

FORUM

2020.06.05 10:24

이상한 현상..

조회 수 142 추천 수 0 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

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

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
Linux 64bit 등
CUBRID Ver.
10.1.3.7765-265e708
CUBRID TOOL Ver.
10.1.0.0005
응용 환경(API)
-

* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


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


동일한 쿼리를 union all 으로 묶고 

하나는 like 검색에 % 넣고 다른 하나는 like 검색에 %를 제외 하고 조회하였을때 결과 length 값이 달라집니다.

위에쿼리

  A.USER_NO LIKE 'yunsun%'

아래쿼리

 A.USER_NO LIKE 'yunsun'


A.user_no의 length의 값이 위에서는 7, 아래쿼리는 6으로 조건이 변경되니 결과값의 length가 변경되는 문제가 있어서 문의드립니다.




재현 방법

1. A테이블에 user_no 'yunsun ' 아이디가 있었습니다. 공백이 있었음

    => 여러번 조회 함 에러발생


2. update 구문으로 update tb_hz090 set user_no = trim(user_no)

  => 전체 공백을 제거


3. 조건식에 따라 user_no의 결과값의 길이가 다르게 리턴됨 


4. user_no는 varchar(30) 임


예제)

SELECT

A.USER_NO,

LENGTH(TRIM(A.USER_NO)),

LENGTH(A.USER_NO),

LENGTH('vouadm'),

A.WORK_AUTH_CD

FROM

TB_HZ090 A

LEFT OUTER JOIN TB_HZ070 B ON A.WORK_AUTH_CD = B.WORK_AUTH_CD

WHERE

B.USE_YN = 'Y'

AND A.USER_NO LIKE 'yunsun%'

UNION ALL

SELECT

A.USER_NO,

LENGTH(TRIM(A.USER_NO)),

LENGTH(A.USER_NO),

LENGTH('vouadm'),

A.WORK_AUTH_CD

FROM

TB_HZ090 A

LEFT OUTER JOIN TB_HZ070 B ON A.WORK_AUTH_CD = B.WORK_AUTH_CD

WHERE

B.USE_YN = 'Y'

AND A.USER_NO LIKE 'yunsun'


결과값 

yunsun 6 6 6 HZ003000

yunsun 6 7 6 HZ003000

  • ?
    정훈 2020.06.05 10:45
    안녕하세요 문의하신 내용대로 재현을 해보았지만 발생하지 않았습니다.
    1. create table trim_test ( user_no varchar(30));
    2. insert into trim_test values ('yunsun ');
    3. select * from trim_test;
    4. update trim_test set user_no = trim (user_no);
    5. select user_no, length(trim(user_no)), length(user_no) from trim_test where user_no like 'yunsun'
    union all
    select user_no, length(trim(user_no)), length(user_no) from trim_test where user_no like 'yunsun%';
    6. 결과
    ======================================================================================
    'yunsun' 6 6
    'yunsun' 6 6

    TB_HZ090, TB_HZ070 해당 테이블의 스키마 정보와 샘플 데이터를 첨부해주시면 확인해보겠습니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 51
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4458
3994 컴퓨터 이름 바꾼후 데이터베이스가 안보여요. 1 secret 그러게 2014.07.08 2
3993 [문의] 라이선스 관련 문의드립니다. 1 secret 히카리 2010.12.15 3
3992 큐브리드 설치 cubrid service start 안됨 1 secret Hera 2016.01.27 4
3991 cubrid 서버 상태 확인 화면 1 secret 알칸펠 2014.03.26 4
3990 [큐브리드 9.2] 세션수 제한? 1 secret 라온힐조 2013.10.28 4
3989 external Procedure 기능 문의드립니다. 1 secret dwpark 2014.12.03 5
3988 마이그레이션 에러 2 secret chocob 2014.03.24 5
3987 다른 질문 드립니다 ~ 3 secret 오니오니 2013.12.06 5
3986 select 속도 문제에 대해서... 1 secret 뛰다가쿵했져 2013.11.05 5
3985 Invalid connection port! 1 secret 하세라 2016.08.19 5
3984 시간 관련 질문 드립니다.. 1 secret noru 2014.08.21 5
3983 DB링크 사용이 가능한지 문의드립니다. 1 secret 장경수 2012.08.28 5
3982 스트링 함수 문의 1 secret daltago87 2010.10.15 6
3981 CUBRID 컨설팅을 받고 싶습니다. 1 secret 오004 2009.12.28 6
3980 broker start fail 1 secret 아코 2015.06.05 6
3979 보안관련 질문입니다. 1 secret goguemi 2014.06.18 6
3978 JBoss connection pool 설정방법 문의드립니다. 1 secret 땡땡이 2014.01.25 6
3977 csql를 사용하여 스크립트를 돌리게 되면 에러가 납니다. 1 secret 애정결핍 2013.12.10 6
3976 큐브리드 포트 설정 질문 드립니다. 1 secret 지나가는 2013.11.29 6
3975 Pro*c 지원 문의 1 secret 파도 2013.07.01 6
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 200 Next
/ 200

Contact Cubrid

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