Background Image

FORUM

조회 수 1029 추천 수 0 댓글 3
?

단축키

Prev이전 문서

Next다음 문서

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

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
Window7 64bit
CUBRID Ver.
9.3.6.007
CUBRID TOOL Ver.
10.1.0.0003
응용 환경(API)
java, php, odbc 등 입력

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


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


큐브리드에서 월별 파티션 테이블을 만드려고 하는데 월별을 계산할 때 루프를 어떻게 생성해야 될지 몰라 질문 드립니다.


일정 기간 동안 (ex : 2018년 ~ 2020년) 월별로 파티션을 만들 때, 변수를 지정하여 월별로 지정할 수 있는 방법이 있는지 확인 부탁 드립니다.


create table test_partition(

test_id varchar(64) NOT NULL,

log_date datetime

)

partition by range(log_date)(

        -- 월별 조건

partition monthly values less than ( )

);


감사합니다.

  • ?
    오명환 2018.08.10 13:50
    range 구문에 month(log_date) 함수를 사용하시면, 월별로 파티션 분할이 가능합니다.
    예)
    create table test_partition (
    test_id varchar(64) not null,
    log_date datetime
    )
    partition by range(month(log_date)) (
    partition jan values less than (1),
    partition feb values less than (2),
    partition last_one values less than maxvalue
    );
  • ?
    재익신 2018.08.10 14:22
    파티션을 년월로 했을 때에는 문자로 구분을 해야되는건가요?

    만약 2018~2019년에 해당하는 데이터를 월별로 파티션테이블을 만든다고 가정했을 때,
    파티션테이블의 키 조건은 '201801', '201802' ...... '201912' 이렇게 밖에 못하는지, 아니면 yyyyMM을 판단할 수 있는건지도 확인 부탁 드리겠습니다.

    큐브리드 메뉴얼을 확인하고 있는데, 특정 yyyyMM에 대한 int값 return 함수는 찾지 못했습니다.

    * 추가로 알려주신 partition jan values less than(1)로 할 경우, 변수 값 보다 작은게 들어가기 때문에 1달씩 밀려서 들어가게 되는데,
    파티션 테이블을 생성 시 만약 월별로만 판단한다면, 1씩 더 큰값으로 넣는게 맞는건가요?

    =======================================================================
    테이블 생성 예시

    create table test_partition (
    test_id varchar(64) not null,
    log_date datetime
    )
    partition by range(YEAR(log_date)+month(log_date)) (
    partition jan values less than (2),
    PARTITION feb values less THAN (3),
    partition last_one values less than maxvalue
    );

    INSERT INTO test_partition VALUES ('test1', '2017-01-01 12:18:37.000')
    -> jan 파티션에서 확인
    INSERT INTO test_partition VALUES ('test2', '2017-02-01 12:18:37.000')
    -> feb 파티션에서 확인
    =======================================================================

    항상 좋은 답변 감사합니다.
  • ?
    오명환 2018.08.10 15:20
    (1) 어떤 날짜 함수를 사용하느냐에 따라 range_value 값이 달라질 것 같습니다.
    예를 들어 month() 함수 인 경우에는 int 형으로 반환되기때문에 int 값을 사용하시면 됩니다.

    (2) 파티션을 나눌 경우에는 키조건에 따라 각각 파티션을 명시하셔야 합니다.

    (3) 년월을 int로 변경하는 방법은 to_days(trunc(log_date, 'mm')) 으로 하시면 되고, range 구문에 사용할 수 있습니다.

    (4) 문의하신대로 less than이므로 +1를 하시는 것이 맞네요.

  1. SQLGate for CUBRID 영구 무료 라이선스 제공

    Date2020.04.09 Byadmin Views4440
    read more
  2. serial 사용시 에러

    Date2018.08.22 By그루비 Views595
    Read More
  3. table명으로 컬럼에 대한 정보 조회질문입니다.

    Date2018.08.21 By민진홍 Views898
    Read More
  4. JDBC 오류 메세지 발생

    Date2018.08.21 By허접 Views469
    Read More
  5. alias 명 한글 깨짐

    Date2018.08.13 Byabc12 Views54056
    Read More
  6. 큐브리드 sql문 질문입니다.

    Date2018.08.10 By민진홍 Views695
    Read More
  7. JDBC Driver와 DB간 버전이 다를경우

    Date2018.08.08 By아니 Views419
    Read More
  8. 월별 파티션 테이블 생성 루프

    Date2018.08.06 By재익신 Views1029
    Read More
  9. comment 질문

    Date2018.08.03 Byjyj0091 Views1239
    Read More
  10. UPDATE 문 WHERE절에 IN

    Date2018.08.02 By큐피 Views661
    Read More
  11. broker 설정 관련 문의 드립니다.

    Date2018.08.02 By키레이니 Views1064
    Read More
  12. 재귀 쿼리에서 root를 판단하는 데이터가 같을 때의 재귀쿼리 방법

    Date2018.08.01 By재익신 Views772
    Read More
  13. Python Driver connect 함수 실행 시 오류

    Date2018.07.31 By이승환 Views961
    Read More
  14. sid

    Date2018.07.26 Byabg Views1405
    Read More
  15. 분리 구축된 데이터 베이스의 회원정보 테이블 데이터 동기화 방안 문의

    Date2018.07.26 By산해 Views750
    Read More
  16. 오라클에서 쓰던 달력 쿼리 관련 하여 질문 드립니다.

    Date2018.07.24 ByoSONYo Views645
    Read More
  17. csql 접속 시 에러

    Date2018.07.23 By김진호 Views1358
    Read More
  18. 큐브리드 각종 정보 확인방법

    Date2018.07.23 Byabg Views4836
    Read More
  19. 비정상 용량증가

    Date2018.07.23 Byspssod Views620
    Read More
  20. 트랜잭션 오류 문의

    Date2018.07.18 Byoneh Views376
    Read More
  21. cubrid manager 설치 후 실행안됨

    Date2018.07.05 By2p Views509
    Read More
Board Pagination Prev 1 ... 52 53 54 55 56 57 58 59 60 61 ... 200 Next
/ 200

Contact Cubrid

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