내가 기본적으로이오라클 SQL 합
SELECT (time_a - time_b) FROM t_tabel WHERE t_some_id IN('1','2','3');
처럼 보이는 두 개의 타임 스탬프에서 시간 차이를 가져 오는 쿼리는 그때
0 0:4:0.0
1 0:15:0.0
0 0:20:0.0
DAYS HOURS24H:MINUTES:SECONDS:MILLISECONDS
지금 난 그냥 합계를
출력을 얻을 수있다 dsinterval 이 시간에, 나는 여러 가지를 시도했지만 아무것도 작동하지 않습니다.SELECT sum(time_a - time_b) FROM t_tabel WHERE t_some_id IN('1','2','3');
나를 제공 : 일치하지 않는 데이터 유형을 : 예상 번호가 SECOND
SELECT sum(to_dsinterval(time_a - time_b)) FROM t_tabel
WHERE t_some_id IN('1','2','3');
에게 INTERVAL DAY를 가지고 저를 준다 : 예상 번호가 SECOND
SELECT sum(SELECT time_a - time_b FROM t_tabel
WHERE t_some_id IN('1','2','3')) from dual;
에게 INTERVAL DAY를 가지고 저를 준다 : 일치하지 않는 데이터 유형을 : 누락 된 표현
SELECT sum(SELECT to_dsinterval(time_a - time_b) FROM t_tabel
WHERE t_some_id IN('1','2','3')) from dual;
준다 : 누락 된 표현
어떻게 든 작동해야합니다.
소수 자릿수 초가 모두 0입니까? 그렇다면 그들은'DATE'로 저장 될 수도 있고,'DATE'에 캐스트되어 합계를 수행 할 수도 있습니다. –
[가능한 평균 시간 간격은 어떻게 되나요?] (http://stackoverflow.com/questions/450581/how-to-average-time-intervals) (OK, 이는 'AVG'에 해당하지만 교장은 동일합니다. 'SUM'을 위해, 그리고 그것은 두 가지 모두를 다루는 AskTom 기사에 연결됩니다 ...) –
Well spotted! 나는 당신의 문제만큼 정확한 데이터 형을 사용하는 것이 도덕적이라고 생각한다. 이 경우에는'date'가 더 좋은 것 같고'timestamp'는 과도한 것 같습니다. 반면에 정확성이 필요하지 않더라도 타임 스탬프 처리를 원하기 때문에 '타임 스탬프와 함께 타임 스탬프'를 사용하려는 경우가 있습니다. –