Background Image

FORUM

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

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
select case
            when to_number(to_char(sysdate, 'd')) between 4 and 7 then sysdate + (10 - to_number(to_char(sysdate, 'd')))
            else sysdate +(3-to_number(to_char(sysdate, 'd'))) end
from db_root


화요일이 지났으면 다음 주 화요일을 조회하고, 화요일이 지나지 않았으면 이번 주 화요일을 출력하는 쿼리입니다.
쿼리에는 이상이 없는 것 같은데, "Semantic: '+' operator is not defined on types date and numeric. " 이라는 오류를 발생시키네요.
오라클에서는 이상이 없이 조회가 되는데요.
오라클 만의 특별한 명령어를 쓴 것도 아닌데...
무엇이 문제일까요?
  • ?
    시난 2009.07.29 20:47

    음.. 이 문제는 numeric과 date 형의 오퍼레이터(+,-) 연산이 호환되지않아서 나타나는 것 같습니다.
    date형과 integer는 잘 되므로..

    다음과 같이 수정하시면 해결됩니다.. (더 좋은 의견 있으시면 댓글 부탁드려요!)
    장기적으로는 CUBRID에서 지원하게 수정해야겠네요.

    select case
                when to_number(to_char(sysdate, 'd')) between 4 and 7 then sysdate + CAST(10 - to_number(to_char(sysdate, 'd')) AS int)
                else sysdate +CAST(3-to_number(to_char(sysdate, 'd')) AS int) end
    from db_root


    select sysdate + 3 from db_root -- OK

    select sysdate + to_number('3') from db_root -- ERROR

    select sysdate + CAST(to_number('3') AS int) from db_root -- OK

    select sysdate + CAST('3' AS int) from db_root -- OK

  • ?
    웁쓰 2009.07.29 21:02
    현재 버전에서 CUBRID 묵시적 형변환 (Implicit Type Conversion) 이 다른 DBMS 보다 좀 더 strict  합니다.
    개선되어야 하는 부분이 맞구요. 계속 사용하실때 Oracle에서 되던 연산이 수행되지 않을수도 있습니다.

    아래 링크를 통해서 확인 가능 합니다.

    CUBRID Data Type 형변환 matrix
    http://www.cubrid.com/online_manual/cubrid_814/syntax/syntax_operator_cast.htm
    Oracle Data Type 형변환 matrix
    http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/sql_elements002.htm#i55214

  1. No Image notice by admin 2024/04/23 by admin
    Views 49 

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

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

  3. 엑셀 파일 임포트시 오류

  4. java stored procedure 실행시 에러

  5. Windows 에서 사일런트 설치가 가능한가요...

  6. jmeter로 테스트해보신분 계신가요

  7. 오라클 rank() over를 대체 할 수 있는 함수가 있나요?

  8. Replication, 서버 이중화, HA

  9. 날짜 계산관련 문의드립니다.

  10. 8.3.1 --> 9.2 업그레이드 후 한글 깨짐. ( vb6.0 + MS949 )

  11. error while loading shared libraries: libgtk-x11-2.0.so.0

  12. 테이블 컬럼에 comment 넣기..

  13. 표준프레임워크의 공통컴포넌트에 게시판설치관련

  14. c# 에서 개발 중인데 쿼리 처리속도가 느리네요(수정)

  15. JVM terminated. Exit code=13 이런 코드가 나와서 cubridmanager가 실행 안됩니다.

  16. mssql -> cubrid 데이터 이전시 문제

  17. cubrid에 대량 데이터 insert 시 에러

  18. [초보질문]function 변환 문의 (oracle -> cubrid)

  19. 파워빌더10.2에서 ODBC설정에 대한 문제

  20. Oracle SQL 을 Cubrid SQL 로 컨버젼 툴 문의

  21. 큐브리드는 안드로이드 연동이 안되나요?

  22. HA 구성 하에서 RO 브로커 연결 시 SELECT 값이 다릅니다.

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