select count(watt) from tbl_test_watt_lsh where regdate
between to_timestamp('2016-10-17 07:40:00' , 'YYYY-MM-DD HH24:MI:SS') and to_timestamp('2016-10-17 07:43:00', 'YYYY-MM-DD HH24:MI:SS')
소요시간 : 14ms (3600건) (하루: 20*60*60*24 = 1,728,000)
select count(watt) from tbl_test_watt_lsh where regdate
between to_timestamp('2016-10-17 07:40:00' , 'YYYY-MM-DD HH24:MI:SS') and to_timestamp('2016-10-17 07:43:00', 'YYYY-MM-DD HH24:MI:SS') +interval'1' // 여기선 1초
소요시간 : 14ms (3620건)
select count(watt) from tbl_test_watt_lsh where regdate
between to_timestamp('2016-10-17 07:40:00' , 'YYYY-MM-DD HH24:MI:SS') and to_timestamp('2016-10-17 07:43:00', 'YYYY-MM-DD HH24:MI:SS') +interval'1' HOUR // 여기선 1 시간
소요시간 : 23ms (63340건)
select count(watt) from tbl_test_watt_lsh where regdate
between to_timestamp('2016-10-17 00:00:00' , 'YYYY-MM-DD HH24:MI:SS') and to_timestamp('2016-10-17 00:00:00', 'YYYY-MM-DD HH24:MI:SS') + '1-1 00:00:00' // 여기선 하루 , 인터벌 값을 이렇게 나타낼 수 있다
'10-10' 는 10년 10개월
소요시간 : 433ms (1496720건)
select * from tbl_test_watt_lsh whereto_char(regdate , 'YYYY-MM-DD HH24;MI:SS') > '2016-10-17 07:40:00' AND to_char(regdate , 'YYYY-MM-DD HH24;MI:SS') < '2016-10-17 07:43:00'
역시 to_char 사용하면 망함!
-- 오늘 (date)
select current_date;
-- 현재시각 (timestamp)
select now();
select current_timestamp;
-- 어제/오늘/내일
select
current_date - 1 "어제",
current_date "오늘",
current_date + 1 "내일"
;
-- day of week
select extract(dow from current_date); -- 일요일(0) ~ 토요일(6)
select extract(isodow from current_date); -- 월요일(1) ~ 일요일(7)
-- day of year
select extract(doy from current_date);
-- week of year
select extract(week from current_date);
-- 두 날짜 사이의 날수
select '2010-07-05'::date - '2010-06-25'::date;
클라이언트는 인터페이스 라이브러리(libpg, JDBC, ODBC 등의 다양한 인터페이스)를 통해 서버와의 연결을 요청(1)하면, Postmaster 프로세스가 서버와의 연결을 중계(2)한다. 이후 클라이언트는 할당된 서버와의 연결을 통해 질의를 수행(3)한다(그림 5).