Background Image

Forum

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

단축키

Prev이전 문서

Next다음 문서

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

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

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


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

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
SELECT SUM(DECODE(D,'1', DAYNUM)) AS SUN,
       SUM(DECODE(D,'2', DAYNUM)) AS MON,
       SUM(DECODE(D,'3', DAYNUM)) AS TUE,
       SUM(DECODE(D,'4', DAYNUM)) AS WED,
       SUM(DECODE(D,'5', DAYNUM)) AS THU,
       SUM(DECODE(D,'6', DAYNUM)) AS FRI,
       SUM(DECODE(D,'7', DAYNUM)) AS SAT
  FROM
       (SELECT ROWNUM AS DAYNUM,
              TO_CHAR(TO_DATE(B.YYMM || LPAD(ROWNUM, 2, '0'), 'YYYYMMDD'), 'D') AS D,
              CAST(TO_CHAR(TO_DATE(B.YYMM || LPAD(ROWNUM, 2, '0'), 'YYYYMMDD'), 'W') AS NUMBER) + DECODE(SIGN(CAST(TO_CHAR(TO_DATE(B.YYMM || LPAD(ROWNUM, 2, '0'),'YYYYMMDD'), 'D') AS NUMBER) - CAST(TO_CHAR(TO_DATE(B.YYMM || '01', 'YYYYMMDD'), 'D') AS NUMBER)), 0, -1, 1, -1, 0) + 1 AS WEEKS
         FROM DB_ROOT A,
              (SELECT '201303' AS YYMM
                FROM DB_ROOT
              ) B
              CONNECT BY PRIOR LEVEL <= TO_NUMBER(TO_CHAR(LAST_DAY(TO_DATE(B.YYMM, 'YYYYMM')), 'DD'))
       )
 GROUP BY WEEKS
ORDER BY WEEKS;

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

위 쿼리는 오라클에서 정상적으로 사용하던 쿼리로 큐브리드 용으로 DUAL 등 일부를 수정한 쿼리 입니다.

해당 쿼리결과는 달력처럼 해당 년월에 해당하는 일자를 뽑아 오는 데요...

큐브리드용으로 바꾸려 하는데 좀처럼 진행이 되지 않아 질문 드립니다.


쿼리 출력시 큐브리드에서는

실행 오류 : -493
Syntax: before '  <= TO_NUMBER(TO_CHAR(LAST_DAY(TO_DATE(B.YYMM, 'YYYYMM')), 'D...'
'Pseudo-column' is not allowed here.

라는 에러를 발생 시키는데요


저부분에서 무엇을 좀더 수정을 해야 하는지 질문 드립니다.

  • ?
    박세훈 2018.08.02 11:27
    CONNECT BY PRIOR LEVEL <- prior와 pseudo-column인 level과 같이 사용하지 못합니다.
    prior를 제거하고 적절하게 쿼리를 수정하세요.

    to_char함수관련 메뉴얼을 링크하오니 참고하셔서 수정하세요.
    https://www.cubrid.org/manual/ko/9.3.0/sql/function/typecast_fn.html#to-char-date-time

    아래 쿼리는 참고하세요.
    SELECT ROWNUM AS DAYNUM,
    TO_CHAR(TO_DATE(B.YYMM || LPAD(ROWNUM, 2, '0'), 'YYYYMMDD'), 'D') AS D
    FROM DB_ROOT A,
    (SELECT '201808' AS YYMM
    FROM DB_ROOT
    ) B
    CONNECT BY LEVEL <= TO_NUMBER(TO_CHAR(LAST_DAY(TO_DATE(B.YYMM, 'YYYYMM')), 'DD'))
  • ?
    oSONYo 2019.06.05 14:57
    감사합니다^^
    덕분에 많은 도움이 되었습니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
2881 jdbc 드라이버 버전 9 abc12 2018.10.01 285
2880 트리거 사용시 임시변수 1 지구인다 2018.10.01 141
2879 오라클 트리거를 옮겨오고싶습니다. 1 지구인다 2018.09.28 139
2878 cubrid linux 설치시 cli 인터렉티브 없이 설치할 수 있는방법좀 부탁드립니다. 1 karoscha 2018.09.28 123
2877 초를 시분초로 바꾸는 방법 문의 드립니다. 1 qwerty 2018.09.18 184
2876 큐브리드 ODBC설정방법문의 1 file 개발자1111 2018.09.18 176
2875 큐브리드 매니저 실행시 오류 3 file 개발자1111 2018.09.18 118
2874 데이터베이스 공간 정리(compactdb) 실행중 정지가능한가요? 1 배추 2018.09.11 142
2873 Cubrid 9.3 > 10.1 업그레이드 문의 1 술먹지마라 2018.09.11 145
2872 db link는 지원 계획이 있나요? 1 qwerty 2018.09.07 194
2871 [Cubrid 9.3] POSIX ERROR 문의 1 vasconcelos 2018.09.06 146
2870 문의드립니다. 3 팩트드림 2018.09.03 207
2869 Cubrid 9.3 isolation 이슈 문의 2 술먹지마라 2018.08.30 172
2868 CUBRID TDE 관련 질문 3 디비디비딥 2018.08.30 171
2867 Cubrid Linux용 ODBC가 없나요? 1 serapian 2018.08.28 154
2866 serial 사용시 에러 12 그루비 2018.08.22 231
2865 table명으로 컬럼에 대한 정보 조회질문입니다. 1 민진홍 2018.08.21 173
2864 JDBC 오류 메세지 발생 2 허접 2018.08.21 177
2863 alias 명 한글 깨짐 2 abc12 2018.08.13 204
2862 큐브리드 sql문 질문입니다. 3 민진홍 2018.08.10 211
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 ... 151 Next
/ 151

Contact Cubrid

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