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 41325 게시물 읽기
No. 41325
날짜 term 구하는 sql 문의
작성자
도와주세요.
작성일
2017-01-31 09:36ⓒ
2017-01-31 09:38ⓜ
조회수
6,318

안녕하세요..

 

많은 도움을 받고 있습니다.

 

문의 사항이 있어서요....

 

 

 

예를 들면...

 

밑에 처럼 start와 end 가 있습니다.

 

이중 start_time 의 min 값 과 end_time의 max 값 사이의 데이터 term을 구하고 싶습니다.

 

datediff 를 이용하고 싶은데요...

 

나오는 날짜 타입은 두 시간간의 간격을 나타내고 싶으며...

 

시간:분:초 단위로 구하고 싶습니다.

 

예를 들면 04:10:73 이런식의 term 입니다.

 

2일을 보고 있는데.. 미치겠어요...

 

부탁 드립니다.

 

감사합니다.

 

 

 

start_time end_time

 

2007-05-18 06:32:04.000 2007-05-18 06:36:29.000

 

2007-05-18 06:37:05.000 2007-05-18 06:40:50.000

 

2007-05-18 06:41:50.000 2007-05-18 06:45:28.000

 

2007-05-18 06:45:51.000 2007-05-18 06:48:16.000

 

2007-05-18 06:48:36.000 2007-05-18 06:58:50.000

 

2007-05-18 06:59:10.000 2007-05-18 07:01:18.000

 

2007-05-18 07:01:57.000 2007-05-18 07:13:20.000

 

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

WITH T AS

(

SELECT TO_DATE('2007-05-18 06:32:04','yyyy-mm-dd hh24:mi:ss') START_TIME, TO_DATE('2007-05-18 06:36:29','yyyy-mm-dd hh24:mi:ss') END_TIME FROM DUAL UNION ALL

SELECT TO_DATE('2007-05-18 06:37:05','yyyy-mm-dd hh24:mi:ss') START_TIME, TO_DATE('2007-05-18 06:40:50','yyyy-mm-dd hh24:mi:ss') END_TIME FROM DUAL UNION ALL

SELECT TO_DATE('2007-05-18 06:41:50','yyyy-mm-dd hh24:mi:ss') START_TIME, TO_DATE('2007-05-18 06:45:28','yyyy-mm-dd hh24:mi:ss') END_TIME FROM DUAL UNION ALL

SELECT TO_DATE('2007-05-18 06:45:51','yyyy-mm-dd hh24:mi:ss') START_TIME, TO_DATE('2007-05-18 06:48:16','yyyy-mm-dd hh24:mi:ss') END_TIME FROM DUAL UNION ALL

SELECT TO_DATE('2007-05-18 06:48:36','yyyy-mm-dd hh24:mi:ss') START_TIME, TO_DATE('2007-05-18 06:58:50','yyyy-mm-dd hh24:mi:ss') END_TIME FROM DUAL UNION ALL

SELECT TO_DATE('2007-05-18 06:59:10','yyyy-mm-dd hh24:mi:ss') START_TIME, TO_DATE('2007-05-18 07:01:18','yyyy-mm-dd hh24:mi:ss') END_TIME FROM DUAL UNION ALL

SELECT TO_DATE('2007-05-18 07:01:57','yyyy-mm-dd hh24:mi:ss') START_TIME, TO_DATE('2007-05-18 07:13:20','yyyy-mm-dd hh24:mi:ss') END_TIME FROM DUAL

)

SELECT TO_CHAR(FLOOR(((TIMES) * 24 * 60 * 60) / 3600),'fm09') || ':' ||

TO_CHAR(FLOOR((((TIMES) * 24 * 60 * 60) - FLOOR(((TIMES) * 24 * 60 * 60) / 3600) * 3600) / 60),'fm09') || ':' ||

TO_CHAR(ROUND((((TIMES) * 24 * 60 * 60) - FLOOR(((TIMES) * 24 * 60 * 60) / 3600) * 3600 -

(FLOOR((((TIMES) * 24 * 60 * 60) - FLOOR(((TIMES) * 24 * 60 * 60) / 3600) * 3600) / 60) * 60))),'fm09')

TIME_DIFFERENCE

FROM (SELECT MAX(END_TIME) - MIN(START_TIME) TIMES

FROM T)

손재균(iikii)님이 2017-01-31 10:50에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
41330Oracle error SQL문 도와주세요..
도와주세요.
2017-02-07
5678
41328두개의 테이블중 하나의 테이블만 선택해서 효율적으로 조회하는 방법 [7]
곰두리아빠
2017-02-06
6265
41327범위 포함 데이터 제외 쿼리 문의 [1]
김정묵
2017-02-06
5791
41325날짜 term 구하는 sql 문의 [1]
도와주세요.
2017-01-31
6318
41323등록되어 있는 쿠폰테이블에서 쿠폰을 채번하는 경우 [2]
김인수
2017-01-25
5844
41322그룹짓기 쿼리질문합니다.
궁금이
2017-01-24
5791
41321oracle application server 10.1.3.1.0 과 oracle 12c 연결 [1]
강승현
2017-01-23
5636
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.049초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다