반응형
postgres를 사용하여 간격을 여러 시간으로 어떻게 변환합니까?
같은 간격이 있다고 가정 해보십시오.
4 days 10:00:00
postgres에서. 이것을 여러 시간으로 변환하는 방법 (이 경우 106입니까?) 함수가 있습니까? 아니면 총알을 물고 다음과 같은 작업을 수행해야합니까?
extract(days, my_interval) * 24 + extract(hours, my_interval)
아마도 가장 쉬운 방법은 다음과 같습니다.
SELECT EXTRACT(epoch FROM my_interval)/3600
정수, 즉 일 수를 원하는 경우 :
SELECT (EXTRACT(epoch FROM (SELECT (NOW() - '2014-08-02 08:10:56')))/86400)::int
가장 쉬운 방법은 일 수를 얻는 것입니다.
SELECT EXTRACT(DAY FROM NOW() - '2014-08-02 08:10:56');
내가 아는 한 다음과 동일하게 반환됩니다.
SELECT (EXTRACT(epoch FROM (SELECT (NOW() - '2014-08-02 08:10:56')))/86400)::int;
select floor((date_part('epoch', order_time - '2016-09-05 00:00:00') / 3600)), count(*)
from od_a_week
group by floor((date_part('epoch', order_time - '2016-09-05 00:00:00') / 3600));
::int
변환 반올림의 원리를 따른다. 반올림과 같은 다른 결과를 원하는 경우와 같은 해당 수학 함수를 사용할 수 있습니다 floor
.
테이블 필드를 변환하는 경우 :
초를 포함하도록 필드를 정의하십시오.
CREATE TABLE IF NOT EXISTS test ( ... field INTERVAL SECOND(0) );
값을 추출하십시오. 간격이 크면 불쾌한 놀라움을 얻을 수있는 다른 현명한 캐스트를 기억하십시오 .
EXTRACT(EPOCH FROM field)::int
select date 'now()' - date '1955-12-15';
총 일수를 계산하는 간단한 쿼리는 다음과 같습니다.
반응형
'development' 카테고리의 다른 글
데이터베이스에서 동적 HTML 문자열 컴파일 (0) | 2020.06.30 |
---|---|
캐시 지우기가있는 window.location.reload (0) | 2020.06.30 |
활성 화면 크기를 얻으려면 어떻게해야합니까? (0) | 2020.06.30 |
주어진 스키마에 테이블이 있는지 확인하는 방법 (0) | 2020.06.30 |
Ruby에서 보호 및 개인 메소드를 단위 테스트하는 가장 좋은 방법은 무엇입니까? (0) | 2020.06.30 |