h2콘솔로 오라클 DB접속하여서 저장되어 있는 값을 조회하려고 합니다.
그래서 select * from 테이블명 해서 조회했더니
날짜를 저장하는 곳에 10자리숫자로 되어 있습니다.
ex) 1397316900, 1397316960
그래서 일정 기간의 날짜만 where 조건으로 검색해서 조회하려고 하는데
SELECT * FROM 테이블명
WHERE TO_CHAR(컬럼명, 'YYYY-MM-DD') >= TO_CHAR(컬럼명, '2015-11-12') AND TO_CHAR(컬럼명, 'YYYY-MM-DD') < TO_CHAR(컬럼명, '2015-11-13')
로도 해보고
SELECT * FROM 테이블명 WHERE TO_CHAR(TO_DATE(컬럼명, 'YYYY-MM-DD'), 'YYYY-MM-DD') >= TO_DATE(TO_CHAR(컬럼명, '2015-11-12'), '2015-11-12') AND TO_CHAR(TO_DATE(컬럼명, 'YYYY-MM-DD'), 'YYYY-MM-DD') < TO_DATE(TO_CHAR(컬럼명, '2015-11-13'), '2015-11-13')
로도 해보았는데
위에 쿼리 에러 : ORA-01481: invalid number format model
아래 쿼리 에러 : ORA-01861: literal does not match format string
가 납니다... 어떻게 해결하나요???ㅜㅜ
오라클은 모르지만 -_-;
1. 위의 쿼리
WHERE
TO_CHAR(컬럼명,
'YYYY-MM-DD'
) >=
'2015-11-12'
AND
TO_CHAR(컬럼명,
'YYYY-MM-DD'
) <
'2015-11-13'
>= < 방법도 있고
WHERE
TO_CHAR(컬럼명,
'YYYY-MM-DD'
) Between
'2015-11-12' And '2015-11-12'
저 형태도 가능해요..
참고만 하세요.
아 -_-;;; 10자리 숫자군요..
http://www.gurubee.net/article/22371
http://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=qna_db&wr_id=156659
상기 링크 참고해보세요..
SELECT TO_DATE('1970-01-01 09:00:00','YY-MM-DD HH24:MI:SS') + (1267475388 / 86400)
FROM DUAL
저리 되 있는걸로 봐서..
WHERE
TO_CHAR(
TO_DATE('1970-01-01 09:00:00','YYYY-MM-DD HH24:MI:SS') + (컬럼명 / 86400), 'YYYY-MM-DD'
) Between
'2015-11-12'
And '2015-11-12'
저리 바꾸면 될거 같기는 한데..
오라클을 안써봐서 모르겠네요^^;;