테이블 date
이있는 Foo
테이블이 있습니다.PostgreSQL에서, 오늘 가운데에있는 데이터
Foo
을 중심으로 date == today
을 가져 오는 쿼리를 작성할 수 있습니까?
예를 들어 나는 100 Foo
입니다. 그리고 나는 그들 중 단지 5 명만 원한다. 그러나 나는 단지 다음과 같은 것을 원한다 : [<before-40days>, <before-30days>, <today>, <after-100days>, <after-101days>]
.
는 내가 현재 할 것은 : 내 응용 프로그램 result = a + b
에서 다음
a = SELECT * FROM Foo WHERE date <= CURRENT_TIMESTAMP ORDER BY ASC;
b = SELECT * FROM Foo WHERE date >= CURRENT_TIMESTAMP ORDER BY DESC;
합니다.
오늘은 하나의 검색어로 Foo
의 중심에 올릴 수 있습니까? https://www.postgresql.org/docs/9.5/static/queries-union.html
(SELECT * FROM Foo WHERE date <= CURRENT_TIMESTAMP ORDER BY ASC)
UNION
(SELECT * FROM Foo WHERE date >= CURRENT_TIMESTAMP ORDER BY DESC)
ORDER BY ...;
그것의 매우 간단하지만, 네트워크 오버 헤드가 감소됩니다
샘플 테이블 데이터와 예상 결과 (형식이 지정된 텍스트)를 추가하십시오. 아마도 이해할 것입니다. – jarlh