시작하기무료로 시작하기

날짜 비교

TIMESTAMP를 다룰 때 특정 날짜의 모든 관측치를 찾고 싶을 때가 있습니다. 하지만 비교할 때 날짜만 지정하면 예상치 못한 결과가 나올 수 있어요. 예를 들어, 다음 쿼리는:

SELECT count(*) 
  FROM evanston311
 WHERE date_created = '2018-01-02';

2018년 1월 2일에 49개의 요청이 있었음에도 0을 반환합니다.

이유는 DATE가 TIMESTAMP와 비교될 때 자동으로 TIMESTAMP로 변환되기 때문입니다. 이때 시간 필드는 모두 0으로 설정돼요:

SELECT '2018-01-02'::timestamp;
 2018-01-02 00:00:00

TIMESTAMP와 DATE를 함께 사용할 때는 이 점을 꼭 염두에 두셔야 합니다.

이 연습은 강의의 일부입니다

SQL로 하는 탐색적 데이터 분석

강의 보기

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

-- Count requests created on January 31, 2017
SELECT count(*) 
  FROM evanston311
 WHERE ___;
코드 편집 및 실행