database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 26665 게시물 읽기
No. 26665
date 형식 비교하는 방법?
작성자
이진웅(lynnweb)
작성일
2006-05-07 17:16
조회수
3,542

 

제가 간만에 DB를 만져서 완전 새로 해딩하는 기분입니다.

 

date 형식의 칼럼을 primary key로 가지는 자료들이 있는데요.

date 형식을 비교할때 꼭 to_char() 함수로 변환한뒤 비교하는 방식밖에 없나요?

 

where to_char(tdate,'yyyymmdd') > '20050101' and to_char(tdate,'yyyymmdd') < '20051231'

 

이런 방법으로 현재 쓰고 있는데 더 나은 방법이 없는가 해서요.

그냥 date 형식 자체로는 비교할 수 없나요?

 

그리고 또 다른 질문 한가지...

데이타들을 현재 들어가있는 시간보다 1초씩 땡겨서 다시 넣는 UPDATE 작업을 해야하는데

시간분초를 다시 변경해서 update 칠때 시간을 연산하기 위한 SQL 질의를 잘 모르겠습니다.

좀 알려주시면 감사하겠습니다.

 

 

 

이 글에 대한 댓글이 총 2건 있습니다.

날짜 형식이 시분초까지 표현하고 있는가 보군요.

 

where tdate > to_date('20050101', 'yyyymmdd') 

and tdate < to_date('20051231','yyyymmdd') + 1

 

만약에 날짜 형식이 20050101000000 이렇게 들어가 있다면

where tdate between to_date('20050101000000', 'yyyymmddhh24miss') 

and to_date('20051231000000', 'yyyymmddhh24miss')

위처럼 할 수 있겠죠.

 

upate는 아래처럼 하시면 됩니다.

 

update tab1

set date_col1 = date_col1 - 1/24/60/60

 

date_col - 1 이러면 1일 전이 됩니다.

date_col - 1/24 이러면 1시간 전이 됩니다.

date_col - 1/24/60 이러면 1분 전이 됩니다.

date_col - 1/24/60/60 이러면 1초 전이 됩니다.

 

 

m님이 2006-05-07 22:06에 작성한 댓글입니다. Edit

답변 감사드립니다. M님. (--)(__)(--)

이진웅(lynnweb)님이 2006-05-07 23:57에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
26668v$sqltext 에 대해서... [5]
까먹지마
2006-05-07
7646
26667데이타 합해서 정리하는거 질문 좀... [4]
이진웅
2006-05-07
1930
26666트리거에서 where문에 만족하는 값이 없는경우... [6]
김종욱
2006-05-07
3997
26665date 형식 비교하는 방법? [2]
이진웅
2006-05-07
3542
266631 [3]
눈을떳다
2006-05-06
3397
26662toad 7.6으로 쿼리정리하는 기능 있나요? [1]
최규운
2006-05-06
1261
26661토드에서 실행계획을 어떻게 볼까요 ?
까먹지마
2006-05-06
1921
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.052초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다