Background Image

FORUM

조회 수 319 추천 수 0 댓글 4
?

단축키

Prev이전 문서

Next다음 문서

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


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

OS
Window7 32bit, Linux 64bit 등
CUBRID Ver
9.3
CUBRID TOOL Ver.
10.2
응용 환경(API)
java


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

 

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


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

정렬 기준 컬럼이 varchar 타입이고 데이터가

1

10

2

A

B

이와 같이 5가지가 들어있다고 가정했을 때,

정렬이 ( 1,2,10,A,B ) or ( A,B,1,2,10 ) 이렇게 되는 방법이 있을까요?

 

 

  • ?
    권호일 2021.09.08 15:20
    질문한 것처럼 정렬하는 것은 어렵습니다.
    아래 내용을 참고하여 정렬하는 방법을 찾아봐야 할 것 같습니다.
    감사합니다.


    CREATE TABLE order_qa( col1 VARCHAR(100) ) ;

    INSERT INTO order_qa(col1) values('1'), ('10'), ('2'), ('A'), ('B') ;

    SELECT col1, LPAD(col1, 3, '0') FROM order_qa ORDER BY LPAD(col1, 3, '0') ;

    결과
    ========================
    col1 LPAD(col1, 3, '0')
    ========================
    1 001
    2 002
    A 00A
    B 00B
    10 010
  • ?
    김민종 2021.09.08 15:44
    만약 사용하시는 데이터가 숫자와 영어라는 조건에서 아래의 쿼리를 사용해 정렬이 가능합니다.

    SELECT
    *
    FROM
    [테이블명]
    ORDER BY
    CASE
    WHEN SUBSTR([컬럼명], 1, 1) BETWEEN '0'
    AND '9' THEN 1
    WHEN UPPER(SUBSTR([컬럼명], 1, 1)) BETWEEN 'A'
    AND 'Z' THEN 2
    ELSE 9
    END,
    LENGTH([컬럼명]),
    UPPER([컬럼명])

    p.s. TEHN 옆의 숫자를 변경해 출력 순서(숫자,영문)를 변경할 수 있습니다.
  • ?
    HiCLASS 2021.09.08 17:17

    order by

    case when [컬럼] rlike like '[a-z]' or [컬럼] rlike '[A-Z]' then 0

    else format([컬럼], 0) end 

    로  비슷하게는 가능합니다.

     

    단 컬럼을 가공하여 정렬시에는 비용이 많이 들어가고 성능도 좋지 않습니다.

  • ?
    허서진 2021.09.08 19:52
    아래와 같게 숫자와 문자를 구분해서 정렬한뒤 union all로 합치는 방법도 있습니다만,
    컬럼가공으로 인해 성능 저하가 발생할 수 있을 것 같습니다.
    (
    select *
    from order_qa
    where ascii(col1)<58
    order by to_number(col1)
    )
    union all
    (
    select *
    from order_qa
    where ascii(col1)>64
    order by col1
    )

  1. CUBRID 사용자를 위한 DBeaver 도구 출시 안내

    Date2024.04.23 Byadmin Views47
    read more
  2. SQLGate for CUBRID 영구 무료 라이선스 제공

    Date2020.04.09 Byadmin Views4458
    read more
  3. mysql로 DB연동 문의

    Date2024.03.20 By연동테스트용 Views74
    Read More
  4. 특정DB만 접근 시간이 현저하게 오래 걸리는 문제

    Date2024.03.20 By그로구 Views64
    Read More
  5. jdbc 연동시의 charset 강제 변경 방법

    Date2024.03.14 Bygwak Views57
    Read More
  6. 도커로 HA환경 구성 테스트중 hb start..

    Date2024.03.12 Bywodud0170 Views63
    Read More
  7. 이중화 관련 문의드립니다.

    Date2024.03.12 Byadqwdqwd123412 Views67
    Read More
  8. 큐브리드 마스터 복제 관련 문의 드립니다.

    Date2024.03.11 By이지혜 Views61
    Read More
  9. 큐브리드 다운로드 에러

    Date2024.03.08 By나래아빠 Views85
    Read More
  10. CUBRID Migration Toolkit "orai18n.jar" 추가 방법

    Date2024.03.07 By가을이아빠 Views59
    Read More
  11. CUBRID 에러 로그 관련 확인 요청

    Date2024.03.07 Byjnj570244 Views95
    Read More
  12. DB링크로 조회시 문자타입이 조회되지 않고 있습니다.

    Date2024.03.06 By원샷 Views93
    Read More
  13. 다른 사용자 계정에서 csql로 localhost 접근 문제

    Date2024.03.05 By가을이아빠 Views79
    Read More
  14. [성능이슈] 큐브리드 함수 사용으로 인한 성능이슈

    Date2024.03.04 By레고 Views113
    Read More
  15. CUBRID 11.2 rpm 설치시 cubrid 계정 패스워드

    Date2024.03.04 By가을이아빠 Views54
    Read More
  16. Cubrid JDBC 버전에 따라 출력되는 결과가 다릅니다.

    Date2024.02.28 By엘L Views89
    Read More
  17. select 질의문 문의

    Date2024.02.26 By태리 Views119
    Read More
  18. cubrid statdump 기술 문의드립니다.

    Date2024.02.19 By이건우 Views11
    Read More
  19. 날짜 형식 변환에 대해서 궁금해서 올립니다.

    Date2024.02.14 By김용용 Views56
    Read More
  20. 컬럼의 Enum DataType 가져오는것 문의

    Date2024.01.30 By엘L Views75
    Read More
  21. Redhat 8버전 tls 1.0 에러

    Date2024.01.30 By11시38분 Views120
    Read More
  22. 테이블이 어떤 스키마(데이터베이스)에 속해있는지 알 수 있는 방법이 있나요?

    Date2024.01.29 By엘L Views117
    Read More
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