¾�ΥС�������ʸ�� �� 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

9.9. ����/����ؿ��ȱ黻��

ɽ9-27�ϡ�����/���﷿���ͤν����ǻ��Ѳ�ǽ�ʴؿ��򼨤��Ƥ��ޤ����ܺ٤ϡ��ʲ���������������ޤ���ɽ9-26�ϡ���+��*���Ρ˴���Ū�ʻ��ѱ黻�Ҥο��񤤤��������Ƥ��ޤ���������ؿ��ˤĤ��Ƥ���9.8�򻲾Ȥ��Ƥ�����������8.5�򻲾Ȥ��ơ�����/����ǡ������ˤĤ��Ƥ��طʤȤʤäƤ����������̤��Ƥ��ʤ���Фʤ�ޤ���

��Ҥ�time�⤷����timestamp�������Ϥ�������ؿ�����ӱ黻�Ҥ����ơ��ºݤˤ�2�Ĥμ��ब����ޤ���1�Ĥ�time with time zone���ޤ���timestamp with time zone�������Τǡ��⤦1�Ĥ�time without time zone���⤷����timestamp without time zone�������ΤǤ�����ά�Τ��ᡢ�����μ���ΰ㤤�ϸ��̤˼����Ƥ��ޤ��󡣤ޤ���+��*�黻�Ҥϸ���黻�Ҥ�����ޤ����㤨��date + integer��integer + date�ˡ����������Ȥ߹�碌�������Τ߼����ޤ���

ɽ 9-26. ����/����黻��

�黻��̾�����
+ date '2001-09-28' + integer '7'date '2001-10-05'
+ date '2001-09-28' + interval '1 hour'timestamp '2001-09-28 01:00:00'
+ date '2001-09-28' + time '03:00'timestamp '2001-09-28 03:00:00'
+ interval '1 day' + interval '1 hour'interval '1 day 01:00:00'
+ timestamp '2001-09-28 01:00' + interval '23 hours'timestamp '2001-09-29 00:00:00'
+ time '01:00' + interval '3 hours'time '04:00:00'
- - interval '23 hours'interval '-23:00:00'
- date '2001-10-01' - date '2001-09-28'integer '3'�����ա�
- date '2001-10-01' - integer '7'date '2001-09-24'
- date '2001-09-28' - interval '1 hour'timestamp '2001-09-27 23:00:00'
- time '05:00' - time '03:00'interval '02:00:00'
- time '05:00' - interval '2 hours'time '03:00:00'
- timestamp '2001-09-28 23:00' - interval '23 hours'timestamp '2001-09-28 00:00:00'
- interval '1 day' - interval '1 hour'interval '1 day -01:00:00'
- timestamp '2001-09-29 03:00' - timestamp '2001-09-27 12:00'interval '1 day 15:00:00'
* 900 * interval '1 second'interval '00:15:00'
* 21 * interval '1 day'interval '21 days'
* double precision '3.5' * interval '1 hour'interval '03:30:00'
/ interval '1 hour' / double precision '1.5'interval '00:40:00'

ɽ 9-27. ����/����ؿ�

�ؿ�̾����ͷ����������
age(timestamp, timestamp) interval�����֤θ�����ǯ�ȷ����Ѥ���"����ܥ�ˤ��"��̤�����age(timestamp '2001-04-10', timestamp '1957-06-13')43 years 9 mons 27 days
age(timestamp)intervalcurrent_date�ʸ��������ˤ��鸺��age(timestamp '1957-06-13')43 years 8 mons 3 days
clock_timestamp() timestamp with time zone���ߤ����դȻ���Ǥ�����ʸ�¹Ի����Ѥ��ޤ�������9.9.4�ò»²¾È¡ï¿½   
current_date date���ߤ����ա���9.9.4�ò»²¾ï¿½   
current_time time with time zone���ߤλ����9.9.4�ò»²¾È¡ï¿½   
current_timestamp timestamp with time zone���ߤ����դȻ���ʸ��ߤΥȥ�󥶥������γ������ջ���ˡ���9.9.4�ò»²¾È¡ï¿½   
date_part(text, timestamp) double precision��ʬ�ե�����ɤμ�����extract��Ʊ���ˡ���9.9.1�򻲾ȡ� date_part('hour', timestamp '2001-02-16 20:38:40')20
date_part(text, interval)double precision��ʬ�ե�����ɤμ�����extract��Ʊ���ˡ���9.9.1�򻲾ȡ� date_part('month', interval '2 years 3 months')3
date_trunc(text, timestamp) timestamp���ꤵ�줿���٤��ڤ�Τơ���9.9.2�⻲�ȡ� date_trunc('hour', timestamp '2001-02-16 20:38:40')2001-02-16 20:00:00
extract(field from timestamp) double precision��ʬ�ե�����ɤμ�������9.9.1�򻲾ȡ� extract(hour from timestamp '2001-02-16 20:38:40')20
extract(field from interval)double precision��ʬ�ե�����ɤμ�������9.9.1�򻲾ȡ� extract(month from interval '2 years 3 months')3
isfinite(date) boolean���դ�ͭ�¡�+/-̵�¤��������ʤ��ˤ��ɤ����θ���isfinite(date '2001-02-16')true
isfinite(timestamp)boolean�����ॹ����פ�ͭ�¡�+/-̵�¤Ǥʤ��ˤ��ɤ����θ���isfinite(timestamp '2001-02-16 21:28:30')true
isfinite(interval)boolean���ֳִ֤�ͭ�¤��ɤ����θ���isfinite(interval '4 hours')true
justify_days(interval) interval30��������1���ɽ���褦�˻��ֳִ֤�Ĵ��justify_days(interval '35 days')1 mon 5 days
justify_hours(interval) interval24���֤�1���Ȥ�����ֳִ֤�Ĵ��justify_hours(interval '27 hours')1 day 03:00:00
justify_interval(interval) intervaljustify_days�����justify_hours����Ѥ�����������ˤ��Ĵ����ԤäƤλ��ֳִ֤�Ĵ��justify_interval(interval '1 mon -1 hour')29 days 23:00:00
localtime time���ߤλ����9.9.4�ò»²¾È¡ï¿½   
localtimestamp timestamp���ߤ����դȻ���ʸ��ߤΥȥ�󥶥������γ��ϡˡ� ��9.9.4�ò»²¾È¡ï¿½   
now() timestamp with time zone���ߤ����դȻ���ʸ��ߤΥȥ�󥶥������γ��ϡˡ� ��9.9.4�ò»²¾È¡ï¿½   
statement_timestamp() timestamp with time zone���ߤ����դȻ���ʸ��ߤ�ʸ�γ��ϡˡ� ��9.9.4�ò»²¾È¡ï¿½   
timeofday() text���ߤ����դȻ����clock_timestamp�Ȼ��Ƥ��ޤ�����text��ʸ����Ȥ����֤�������9.9.4�ò»²¾È¡ï¿½   
transaction_timestamp() timestamp with time zone���ߤ����դȻ���ʸ��ߤΥȥ�󥶥������γ��ϡˡ� ��9.9.4�ò»²¾È¡ï¿½   

�����δؿ��˲ä���OVERLAPS SQL�黻�Ҥ����ݡ��Ȥ���Ƥ��ޤ���

(start1, end1) OVERLAPS (start2, end2)
(start1, length1) OVERLAPS (start2, length2)

���μ��ϡ�2�Ĥλ��ֳִ֤��Ťʤ�ʤ��ν�ü���������ޤ��˻��˿����֤��ޤ����Ťʤ�ʤ����ϵ����֤��ޤ�����ü�����ա���������ॹ����ס��⤷���ϡ�����/����/�����ॹ����פ�³�����ֳִ֤ǻ��ꤵ��ޤ����ͤ��Ȥ߹�碌��Ϳ����줿�ݡ����ϤȽ�λ�Τ��������˵��Ҥ��Ƥ⹽���ޤ���OVERLAPS��Ϳ����줿�ͤ��⡢�㤤��Τ򳫻ϤȤ��ư����ޤ����ƻ��ֳִ֤ϡ�start <=time < end�Ȥ��ä�Ⱦ����֤Ȥ��Ƹ��ʤ���ޤ�����������start��end��Ʊ���ͤξ��ˤ�ñ��λ������Ȥʤ�ޤ�������ϡ��㤨�н�λ���Τߤ�Ʊ���Ǥ���2�Ĥλ��ֳִ֤ϡ�ɬ������Ťʤ�ʤ����Ȥ��̣���ޤ���

SELECT (DATE '2001-02-16', DATE '2001-12-21') OVERLAPS
       (DATE '2001-10-30', DATE '2002-10-30');
Result: true
SELECT (DATE '2001-02-16', INTERVAL '100 days') OVERLAPS
       (DATE '2001-10-30', DATE '2002-10-30');
Result: false
SELECT (DATE '2001-10-29', DATE '2001-10-30') OVERLAPS
       (DATE '2001-10-30', DATE '2001-10-31');
Result: false
SELECT (DATE '2001-10-30', DATE '2001-10-30') OVERLAPS
       (DATE '2001-10-30', DATE '2001-10-31');
Result: true

timestamp with time zone���ͤ�interval���ͤ�ä�����ʤޤ���timestamp with time zone���ͤ���interval���ͤ򺹤������������ˤ�����ʬ�ϡ����ˤ��ο��Ǽ����줿 timestamp with time zone�����դ���˿ʤ�ޤ��ʤ⤷���ϸ���ᤷ�ޤ��ˡ��ƻ��֤ؤΰܹԤ˸٤äƤ��ѹ��˴ؤ��Ƥϡʥ��å����λ����Ӥ�DST��ǧ������褦�ˤʤäƤ���Сˡ�interval '1 day'��interval '24 hours'��������ɬ�פϤ���ޤ����㤨�С����å����λ����Ӥ� CST7CDT�����ꤵ��Ƥ�����ˡ� timestamp with time zone '2005-04-02 12:00-07' + interval '1 day' �ϡ�timestamp with time zone '2005-04-03 12:00-06'��⤿�餷�ޤ�������Ʊ�����timestamp with time zone��interval '24 hours'��ä���ȡ�timestamp with time zone '2005-04-03 13:00-06'�Ȥ�����̤ˤʤ�ޤ���������ͳ��CST7CDT�����Ӥ�2005-04-03 02:00�˲ƻ��֤ؤ��ѹ������뤫��Ǥ���

�ۤʤ��Ǥ��������ۤʤ�ޤ��Τ�age���֤����months�ˤϤ����ޤ���������ޤ���PostgreSQL�Τ�����Ϸ�ˤޤ����룲�Ĥ����դη׻��ˤ����ơ����դ��ᤤ�ۤ��η����Ѥ��ޤ����㤨�С�age('2004-06-01', '2004-04-30')��4�����Ѥ���1 mon 1 day�����ޤ��������������Ѥ���ȡ�5���31�����ꡢ4���30���Τ��ᡢ��̤�1 mon 2 days�Ǥ���

9.9.1. EXTRACT, date_part

EXTRACT(field FROM source)

extract�ؿ��ϡ�����/������ͤ���ǯ����ʤɤ���ʬ�ե�����ɤ���Ф��ޤ���source��timestamp����time�����ޤ���interval����ɾ�����Ǥʤ���Фʤ�ޤ����date���μ���timestamp���˥��㥹�Ȥ���ޤ��Τǡ�Ʊ�ͤ˻��Ѳ�ǽ�Ǥ��ˡ�field��source���ͤ���ɤΥե�����ɤ���Ф��뤫�����򤹤뼱�̻Ҥ⤷����ʸ����Ǥ���extract�ؿ���double precision�����ͤ��֤��ޤ����ʲ���ͭ���ʥե������̾�򼨤��ޤ���

century

����

SELECT EXTRACT(CENTURY FROM TIMESTAMP '2000-12-16 12:21:13');
Result: 20
SELECT EXTRACT(CENTURY FROM TIMESTAMP '2001-02-16 20:38:40');
Result: 21

�����ο͡��ˤϤ��Τ褦�ʰռ��Ϥ���ޤ���Ǥ��������ǽ��������0001-01-01 00:00:00 AD����Ϥޤ�ޤ���������������ƤΥ��쥴�ꥢ�������Ѥ�����Ŭ�Ѥ���Ƥ��ޤ���0�Ȥ����ͤ������Ϥ���ޤ���-1�����μ���1�����Ǥ��� ���������Ǽ���Ǥ��ʤ���С�����Х�������������ѥ�������Ʋ�Υ�����ˡ���������Ƥ���������

PostgreSQL��꡼��8.0�����Ǥϡ��������ֹ��դ��δ����˽��äƤ��ޤ���Ǥ�����ñ��ǯ��100�ǽ���������Τ��֤��Ƥ��ޤ�����

day

timestamp�ͤˤĤ��Ƥϡ�(����Ρ����եե�����ɡ�1��31)��interval�ͤˤĤ��Ƥ����ա�

SELECT EXTRACT(DAY FROM TIMESTAMP '2001-02-16 20:38:40');
Result: 16

SELECT EXTRACT(DAY FROM INTERVAL '40 days 1 minute');
Result: 40
decade

ǯ�ե�����ɤ�10�dz�ä����

SELECT EXTRACT(DECADE FROM TIMESTAMP '2001-02-16 20:38:40');
Result: 200
dow

��������0�ˤ�����������6�ˤޤǤ�����

SELECT EXTRACT(DOW FROM TIMESTAMP '2001-02-16 20:38:40');
Result: 5

extract�ؿ������������ֹ��to_char(...,'D')�ؿ��Τ���Ȥϰۤʤ��������դ��Ƥ���������

doy

ǯ��Ǥ��̻�������1��365/366��

SELECT EXTRACT(DOY FROM TIMESTAMP '2001-02-16 20:38:40');
Result: 47
epoch

timestamp with time zone�����ͤˤ����ơ�1970-01-01 00:00:00 UTC������ÿ�����ο��ξ��⤢��ˡ�date��timestamp�����ͤˤ����ơ��������륿�����1970-01-01 00:00:00������ÿ���interval�����ͤǤϤ��λ��ֳִ֤ˤ������äι�ס�

SELECT EXTRACT(EPOCH FROM TIMESTAMP WITH TIME ZONE '2001-02-16 20:38:40.12-08');
Result: 982384720.12

SELECT EXTRACT(EPOCH FROM INTERVAL '5 days 3 hours');
Result: 442800

�ʲ��ˡ����ηв��ÿ��򥿥��ॹ������ͤ��Ѵ�������ˡ�򼨤��ޤ���

SELECT TIMESTAMP WITH TIME ZONE 'epoch' + 982384720.12 * INTERVAL '1 second';

(to_timestamp�ؿ��Ͼ嵭���Ѵ��򥫥ץ��벽���ޤ���)

hour

���Υե�����ɡ�0��23��

SELECT EXTRACT(HOUR FROM TIMESTAMP '2001-02-16 20:38:40');
Result: 20
isodow

��������1�ˤ�����������7�ˤޤǤ�����

SELECT EXTRACT(ISODOW FROM TIMESTAMP '2001-02-18 20:38:40');
Result: 7

�����������dow��Ʊ�졣ISO 8601�����ֹ��դ��˰��ס�

isoyear

���դ�Ʊ������ISO 8601ǯ��interval�ˤ��б����ʤ��ˡ�

SELECT EXTRACT(ISOYEAR FROM DATE '2006-01-01');
Result: 2005
SELECT EXTRACT(ISOYEAR FROM DATE '2006-01-02');
Result: 2006

���Ƥ�ISOǯ�ϣ������ޤཱུ�η��������鳫�Ϥ���ޤ������äơ������ܡ��ޤ��ϣ�����ܤ�ISOǯ�����쥴�ꥪǯ�Ȱۤʤ��ǽ��������ޤ������ܺ٤�week�ե�����ɤ򻲾Ȥ��Ƥ���������

���Υե�����ɤ�8.3������PostgreSQL��꡼���Ǥ�ͭ���Ǥ���ޤ���

microseconds

ü����ʬ��ޤߡ�1,000,000��褸��줿�åե�����ɡ����Ƥ��ä�ޤळ�Ȥ����ա�

SELECT EXTRACT(MICROSECONDS FROM TIME '17:12:28.5');
Result: 28500000
millennium

�ߥ�˥����1��ǯ���֡�

SELECT EXTRACT(MILLENNIUM FROM TIMESTAMP '2001-02-16 20:38:40');
Result: 3

1900ǯ���ǯ����2�ߥ�˥���Ǥ�����3�ߥ�˥����2001ǯ1��1������Ϥޤ�ޤ�����

PostgreSQL��꡼��8.0�����Ǥϡ��ߥ�˥�����ֹ��դ��δ����˽��äƤ��ޤ���Ǥ�����ñ��ǯ�ե�����ɤ�1000�dz�ä��ͤ��֤��Ƥ��ޤ�����

milliseconds

ü����ʬ��ޤߡ�1000��褸��줿�åե�����ɡ����Ƥ��ä�ޤळ�Ȥ����դ��Ƥ���������

SELECT EXTRACT(MILLISECONDS FROM TIME '17:12:28.5');
Result: 28500
minute

ʬ�ե�����ɡ�0��59��

SELECT EXTRACT(MINUTE FROM TIMESTAMP '2001-02-16 20:38:40');
Result: 38
month

timestamp�����ͤ��Ф��Ƥ�ǯ��η��ֹ��1��12�ˡ�interval�����ͤ��Ф��ƤϷ��ֹ�ǡ�12�ξ�;��0��11�ˡ�

SELECT EXTRACT(MONTH FROM TIMESTAMP '2001-02-16 20:38:40');
Result: 2

SELECT EXTRACT(MONTH FROM INTERVAL '2 years 3 months');
Result: 3

SELECT EXTRACT(MONTH FROM INTERVAL '2 years 13 months');
Result: 1
quarter

�������դ��ޤޤ��ǯ�λ�Ⱦ����1��4�ˡ�

SELECT EXTRACT(QUARTER FROM TIMESTAMP '2001-02-16 20:38:40');
Result: 1
second

ü����ޤ���åե�����ɡ�0��59��[1]�ˡ�

SELECT EXTRACT(SECOND FROM TIMESTAMP '2001-02-16 20:38:40');
Result: 40

SELECT EXTRACT(SECOND FROM TIME '17:12:28.5');
Result: 28.5
timezone

��ñ�̤�UTC����λ����ӥ��ե��åȡ������ͤ�UTC�����λ����Ӥ��б���������ͤ�UTC������λ����Ӥ��б��� (����Ū�ˤϡ�PostgreSQL�Ϥ��뤦�ä����椷�ʤ�����UT1����ѡ�)

timezone_hour

�����ӥ��ե��åȤλ�����ʬ��

timezone_minute

�����ӥ��ե��åȤ�ʬ����ʬ��

week

��������ǯ���̻��Ǥν���׻����ޤ�����ISO 8601�Ρ�����ǤϽ��Ϸ���������Ϥޤꡢ����ǯ��1��4����ޤཱུ�򤽤�ǯ����1���Ȥ��Ƥ��ޤ��� �Ĥޤꡢǯ�κǽ�������������뽵������ǯ����1���Ȥʤ�ޤ���

ISO������Ǥϡ�1����ᤤ���ˤ�����ǯ����52���⤷������53���Ȥʤ뤳�Ȥ����ꡢ12����٤����ˤ��ˤϼ�ǯ�κǽ�ν��ΰ����Ȥʤ뤳�Ȥ�����ޤ��� �㤨�С�2005-01-01��2004ǯ����53���Ǥ��ꡢ2006-01-01��2005ǯ����52���ΰ����Ǥ�������2012-12-31��2013ǯ����1���ΰ����Ȥʤ�ޤ��� �������Τ����̤����뤿�ᡢisoyear�ե�����ɤ�week��ʻ�Ѥ��뤳�Ȥ�侩���ޤ���

SELECT EXTRACT(WEEK FROM TIMESTAMP '2001-02-16 20:38:40');
Result: 7
year

ǯ�ե�����ɡ�AD��ǯ��¸�ߤ��ʤ����Ȥ�˺��ʤ��Ǥ������������Τ���AD��ǯ����BC��ǯ�򸺤�����ˤ����դ�ɬ�פǤ���

SELECT EXTRACT(YEAR FROM TIMESTAMP '2001-02-16 20:38:40');
Result: 2001

extract�ؿ��ϸ����黻��������Ū�Ǥ���������/������ͤ�ɽ��������Ū�Ǥν񼰤ˤĤ��Ƥ���9.8�򻲾Ȥ��Ƥ���������

date_part�ؿ�������Ū��Ingres����߷פ��줿��Τǡ�ɸ��SQL��extract�ؿ��������Ǥ���

date_part('field', source)

������field�ѥ�᡼����̾���ǤϤʤ�ʸ�����ͤǤ���ɬ�פ����뤳�Ȥ����դ��Ƥ���������date_part��ͭ���ʥե������̾��extract��Ʊ���Ǥ���

SELECT date_part('day', TIMESTAMP '2001-02-16 20:38:40');
Result: 16

SELECT date_part('hour', INTERVAL '4 hours 3 minutes');
Result: 4

9.9.2. date_trunc

date_trunc�ؿ��ϳ�ǰŪ�˿��ͤ��Ф���trunc�ؿ���������Ƥ��ޤ���

date_trunc('field', source)

source�ϡ��ǡ�����timestamp�⤷����interval��ɾ�����Ǥ��ʥǡ�����date��time�Ϥ��줾�켫ưŪ��timestamp�⤷����interval�˥��㥹�Ȥ���ޤ��ˡ�field�ϡ������ͤ��ͤ�ɤ����٤��ڤ�ΤƤ뤫�����򤷤ޤ�������ͤ��ͤϡ����򤵤줿��ΰʲ��򥼥�����������ȷ�ξ���1������ˤ��������ƤΥե�����ɤ����timestamp�⤷����interval���Ǥ���

field��ͭ���ͤˤϼ��Τ�Τ�����ޤ���

microseconds
milliseconds
second
minute
hour
day
week
month
quarter
year
decade
century
millennium

�㡧

SELECT date_trunc('hour', TIMESTAMP '2001-02-16 20:38:40');
Result: 2001-02-16 20:00:00

SELECT date_trunc('year', TIMESTAMP '2001-02-16 20:38:40');
Result: 2001-01-01 00:00:00

9.9.3. AT TIME ZONE

AT TIME ZONE��ʸ����Ѥ��뤳�Ȥˤ�ꡢ�����ॹ����פ�ۤʤ�����Ӥ��Ѵ����뤳�Ȥ��Ǥ��ޤ���ɽ9-28�ˤ��μ���򼨤��ޤ���

ɽ 9-28. AT TIME ZONE Variants

�����������
timestamp without time zone AT TIME ZONE zone timestamp with time zoneͿ����줿�����Ӥʤ������ॹ����פ���ꤵ�줿�����Ӥˤ���Ȥ��Ƽ�갷���ޤ���
timestamp with time zone AT TIME ZONE zone timestamp without time zoneͿ����줿�������դ������ॹ����פ򿷵��λ����Ӥˡ������Ӥλ���ʤ��Ѵ����ޤ���
time with time zone AT TIME ZONE zone time with time zoneͿ����줿����with time zone�򿷤��������Ӥ��Ѵ����ޤ���

�����μ��Ǥϡ����ꤹ�������zone�ϡ���'PST'�Τ褦�ʡ˥ƥ�����ʸ���󡢤ޤ��ϡ�INTERVAL '-08:00'�Τ褦�ʡ˻��ֳִ֤ǻ��ꤹ�뤳�Ȥ��Ǥ��ޤ��� �ƥ����Ȥξ�硢��8.5.3�˼�������ˡ�ǻ�����̾�Τ���ꤹ�뤳�Ȥ��Ǥ��ޤ���

�ʲ�����򼨤��ޤ��ʥ�����������Ӥ�PST8PDT�����ꤷ�Ƥ��ޤ��ˡ�

SELECT TIMESTAMP '2001-02-16 20:38:40' AT TIME ZONE 'MST';
Result: 2001-02-16 19:38:40-08

SELECT TIMESTAMP WITH TIME ZONE '2001-02-16 20:38:40-05' AT TIME ZONE 'MST';
Result: 2001-02-16 18:38:40

�ǽ����ϡ������ӤΤʤ������ץ�����פ���Ѥ��������MST���֡�UTC-7�ˤȤ��Ʋ�ᤷ��UTC�����ॹ����פ��������ޤ������줫�顢UTC�����ॹ����פ���ɽ���Ѥ�PST��UTC-7�ˤ��֤��������ޤ���2���ܤ���ϡ�EST��UTC-5�ˤǻ��ꤵ�줿�����ॹ����פ���Ѥ���MST��UTC-7�ˤǤΥ���������֤��Ѵ����Ƥ��ޤ���

�ؿ�timezone(zone, timestamp)�ϡ�SQL���ι�ʸtimestamp AT TIME ZONE zone�������Ǥ���

9.9.4. Current Date/Time

PostgreSQL�ϡ����ߤ����ջ���˴ؤ����ͤ��֤�¿���δؿ����󶡤��ޤ��� ������ɸ��SQL�ؿ��Ϥ��٤ơ����ߤΥȥ�󥶥������γ��ϻ���˴�Ť����ͤ��֤��ޤ���

CURRENT_DATE
CURRENT_TIME
CURRENT_TIMESTAMP
CURRENT_TIME(precision)
CURRENT_TIMESTAMP(precision)
LOCALTIME
LOCALTIMESTAMP
LOCALTIME(precision)
LOCALTIMESTAMP(precision)

CURRENT_TIME�����CURRENT_TIMESTAMP�ؿ��Ǥϡ������Ӥ�ȼ���ͤ򰷤��ޤ���������LOCALTIME�����LOCALTIMESTAMP�ؿ��Ǥϡ������Ӥ�ȼ��ʤ��ͤ򰷤��ޤ���

CURRENT_TIME��CURRENT_TIMESTAMP��LOCALTIME�������LOCALTIMESTAMP�ؿ��Ǥϡ����٤Υѥ�᡼���򥪥ץ����Ǽ�뤳�Ȥ��Ǥ�������˹�碌���åե�����ɤ�ü�����ݤ���̤�⤿�餷�ޤ������٤Υѥ�᡼�����ʤ���硢��̤ϻ��Ѳ�ǽ�ʺ������٤ǽ��Ϥ���ޤ���

�㡧

SELECT CURRENT_TIME;
Result: 14:39:53.662522-05

SELECT CURRENT_DATE;
Result: 2001-12-23

SELECT CURRENT_TIMESTAMP;
Result: 2001-12-23 14:39:53.662522-05

SELECT CURRENT_TIMESTAMP(2);
Result: 2001-12-23 14:39:53.66-05

SELECT LOCALTIMESTAMP;
Result: 2001-12-23 14:39:53.662522

�����δؿ��ϡ����ߤΥȥ�󥶥������γ��ϻ�����֤��ޤ��� �����ͤϡ��ȥ�󥶥�����󤬼¹Ԥ���Ƥ���֤��Ѳ����ޤ��� ����ϡ����ε�ǽ��Ƥ������̤Ǥ��� ñ��ȥ�󥶥������ǡ�"current"���֤���������ä�ɽ����Ԥ����Ȥ��Ǥ���褦�ˤ��뤳�Ȥ���Ū�Ȥ������Τ��ᡢƱ��ȥ�󥶥������Dz����ѹ���ԤäƤ�Ʊ��Υ����ॹ����פ��������ޤ���

����: ¾�Υǡ����١��������ƥ�Ǥϡ��������ͤ������ˤ����ä����뤳�Ȥ�����ޤ���

PostgreSQL�Ϥޤ����ؿ���ƤӽФ������μºݤθ��߻���丽�ߤ�ʸ�γ��ϻ�����֤��ؿ����󶡤��ޤ�����ɸ��SQL�δؿ�����������ʲ��˼����ޤ���

transaction_timestamp()
statement_timestamp()
clock_timestamp()
timeofday()
now()

transaction_timestamp()��CURRENT_TIMESTAMP�������Ǥ��������Τ˲����֤�����ȿ�Ǥ���̾���ˤʤäƤ��ޤ��� statement_timestamp()�ϸ��ߤ�ʸ�μ¹Գ��ϻ�����֤���ΤǤ��ʤ�����Ū�ˤ����ȡ�ľ���Υ��ޥ�ɥ�å������򥯥饤����Ȥ��������ä�����Ǥ��ˡ� statement_timestamp()�����transaction_timestamp()�ϥȥ�󥶥������κǽ�Υ��ޥ�ɤǤ�Ʊ���ͤ��֤��ޤ��������θ�˰���³�����ޥ�ɤǤϰۤʤ��ǽ��������ޤ��� clock_timestamp()�ϼºݤθ��߻�����֤��ޤ��Τǡ������ͤ�ñ���SQL���ޥ�ɤǤ��äƤ�ۤʤ�ޤ��� timeofday()��PostgreSQL�����Ū�ʴؿ��Ǥ��� clock_timestamp()Ʊ�͡��ºݤθ��߻�����֤��ޤ�����timestamp with time zone�����ͤǤϤʤ����������줿textʸ������֤��ޤ���now()��transaction_timestamp()��Ʊ����Τǡ�����Ū��PostgreSQL�ؿ��Ǥ���

���٤Ƥ�����/���﷿�Ϥޤ������ߤ����դȻ���ʷ����֤��ޤ����ȥ�󥶥������γ��ϻ���Ȥ��Ʋ�ᤵ��ޤ��ˤ�ɽ���ü�ʥ�ƥ���� now������դ��ޤ��� �������äơ������Σ��Ĥμ¹Է�̤�����Ʊ����ΤȤʤ�ޤ���

SELECT CURRENT_TIMESTAMP;
SELECT now();
SELECT TIMESTAMP 'now';  -- incorrect for use with DEFAULT

�ƥ��å�: �ơ��֥������������DEFAULT�����ꤹ��Τ�3���ܤη�����Ȥ����Ȥϻפ�ʤ��Ǥ��礦����������Ϥ��줿���������ƥबnow��timestamp���Ѵ�����Τǡ��ǥե�����ͤȤ��ƥơ��֥뤬�������줿���郎�Ȥ��ޤ����ǽ��2�Ĥη����ϴؿ��ƤӽФ��Τ���ǥե�����ͤ����Ѥ����ޤ�ɾ������ޤ��󡣤Ǥ����顢�����δؿ�������������֤�ǥե���ȤȤ��롢˾�ޤ������񤤤򤷤ޤ���

9.9.5. �ٱ�¹�

�ʲ��δؿ��ϡ������Хץ������μ¹Ԥ��ٱ䤵���뤿��˻��Ѳ�ǽ�Ǥ���

pg_sleep(seconds)

pg_sleep�ϡ�seconds�÷в᤹��ޤǡ����ߤΥ��å����Υץ�������ٻߤ����ޤ���seconds��double precision�����ͤǤ��� ���Τ��ᡢ����ñ�̤ǵٻ��ÿ�����ꤹ�뤳�Ȥ��Ǥ��ޤ����ʲ�����򼨤��ޤ���

SELECT pg_sleep(1.5);

����: �ٻ߻��֤�ͭ����ʬ��ǽ�ϥץ�åȥե�����˰�¸���ޤ���0.01�ä�����Ū���ͤǤ����ٱ�Ͼ��ʤ��Ȥ���ꤷ���̤�Ԥ��ޤ��������Ф���٤��װ��Ȥʤꡢ���Ĺ���ʤ��ǽ��������ޤ���

�ٹ�

pg_sleep��ƤӽФ��������å����ɬ�װʾ�Υ��å����ݻ����Ƥ��ʤ����Ȥ�μ¤ˤ��Ƥ�������������ʤ��ȡ�¾�Υ��å���󤬵ٻ���Υץ��������Ե����ʤ���Фʤ�ʤ����⤷��ޤ��󡣤��Τ��᥷���ƥ����Τ�®�٤��㲼���뤳�Ȥˤʤ뤫�⤷��ޤ���

����

[1]

���ڥ졼�ƥ��󥰥����ƥ�Ǥ��뤦�ä���������Ƥ������60�ޤǡ�