* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
Window7 64 | |
9.3.1.703 | |
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.
라는 에러를 발생 시키는데요
저부분에서 무엇을 좀더 수정을 해야 하는지 질문 드립니다.