postgresql에서 작동 시간의 시간 쿼리를 수행하는 방법
(개방 된 시간에 따라). 일주일이 끝날 때까지 운영 시간이 감싸 수 있습니다. 이 프로세스를 단순화하기 위해 tsrange . 시간 간격을 저장하고 조작하는 편리한 방법을 제공합니다.
테이블 구조를 다시 디자인
[orpens_on, closes_on, opens_at, closes_at)를 유형의 tsrange라고하는 단일 열로 교체합니다. 운영 시간은 tsrange 값 세트로 저장됩니다.
'[1996-01-03 18:30, 1996-01-04 05:00]'
예
'[1996-01-03 18:30, 1996-01-04 05:00]'다음 tsrange 값은 수요일, 오후 6 시부 터 목요일부터 오전 5 시까 지 운영 시간을 나타냅니다. 05:00] '
tsrange
를 사용하여 쿼리가 업데이트 된 테이블 구조를 사용하여 쿼리가 훨씬 간단 해집니다. HOO에서 시간 @& gt; F_HOO_TIME (now ()) 함수 f_hoo_time ()는 시간대가 타임 스탬프를 타임 스탬프로 변환하는 반면, Conferment Operator (@>)는 현재 시간이 지정된 시간 범위 내에 속하는지 확인합니다.
색인
시간 열에서 sp-gist 색인 생성. 이 색인을 사용하면 시간 범위가 효율적으로 조회하여 쿼리 성능이 빠릅니다.
결론
는 작동 시간을 크게 단순화하고 성능을 향상시킬 수 있습니다. 이 접근법은 원래 쿼리보다 더 효율적이고 강력합니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3