PostgreSQL 9.2.4ʸ�� | ||||
---|---|---|---|---|
���Υڡ��� | ������ | �� 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) | interval | current_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)
| interval | 30��������1���ɽ���褦�˻��ֳִ֤�Ĵ�� | justify_days(interval '35 days') | 1 mon 5 days |
justify_hours(interval)
| interval | 24���֤�1���Ȥ�����ֳִ֤�Ĵ�� | justify_hours(interval '27 hours') | 1 day 03:00:00 |
justify_interval(interval)
| interval | justify_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�Ǥ���
EXTRACT
, date_part
EXTRACT(field FROM source)
extract
�ؿ��ϡ�����/������ͤ���ǯ����ʤɤ���ʬ�ե�����ɤ���Ф��ޤ���source��timestamp����time�����ޤ���interval����ɾ�����Ǥʤ���Фʤ�ޤ����date���μ���timestamp���˥��㥹�Ȥ���ޤ��Τǡ�Ʊ�ͤ˻��Ѳ�ǽ�Ǥ��ˡ�field��source���ͤ���ɤΥե�����ɤ���Ф��뤫�����򤹤뼱�̻Ҥ⤷����ʸ����Ǥ���extract
�ؿ���double precision�����ͤ��֤��ޤ����ʲ���Í���ʥե������̾�ò¼¨¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½
����
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�ǽ���������Τ��֤��Ƥ��ޤ�����
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
ǯ�ե�����ɤ�10�dz�ä����
SELECT EXTRACT(DECADE FROM TIMESTAMP '2001-02-16 20:38:40'); Result: 200
��������0�ˤ�����������6�ˤޤǤ�����
SELECT EXTRACT(DOW FROM TIMESTAMP '2001-02-16 20:38:40'); Result: 5
extract
�ؿ������������ֹ��to_char(...,'D')
�ؿ��Τ���Ȥϰۤʤ��������դ��Ƥ���������
ǯ��Ǥ��̻�������1��365/366��
SELECT EXTRACT(DOY FROM TIMESTAMP '2001-02-16 20:38:40'); Result: 47
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
�ؿ��Ͼåµï¿½ï¿½ï¿½Ñ´ï¿½ï¿½ò¥«¥×¥ï¿½ï¿½ë²½ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½)
���Υե�����ɡ�0��23��
SELECT EXTRACT(HOUR FROM TIMESTAMP '2001-02-16 20:38:40'); Result: 20
��������1�ˤ�����������7�ˤޤǤ�����
SELECT EXTRACT(ISODOW FROM TIMESTAMP '2001-02-18 20:38:40'); Result: 7
�����������dow��Ʊ�졣ISO 8601�����ֹ��դ��˰��ס�
���դ�Ʊ������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��꡼���Ǥ�Í���Ǥ���ޤ���
ü����ʬ��ޤߡ�1,000,000��褸��줿�åե�����ɡ����Ƥ��ä�ޤळ�Ȥ����ա�
SELECT EXTRACT(MICROSECONDS FROM TIME '17:12:28.5'); Result: 28500000
�ߥ�˥����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�ä��ͤ��֤��Ƥ��ޤ�����
ü����ʬ��ޤߡ�1000��褸��줿�åե�����ɡ����Ƥ��ä�ޤळ�Ȥ����դ��Ƥ���������
SELECT EXTRACT(MILLISECONDS FROM TIME '17:12:28.5'); Result: 28500
ʬ�ե�����ɡ�0��59��
SELECT EXTRACT(MINUTE FROM TIMESTAMP '2001-02-16 20:38:40'); Result: 38
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
�������դ��ޤޤ��ǯ�λ�Ⱦ����1��4�ˡ�
SELECT EXTRACT(QUARTER FROM TIMESTAMP '2001-02-16 20:38:40'); Result: 1
ü����ޤ���åե�����ɡ�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
��ñ�̤�UTC����λ����ӥ��ե��åȡ������ͤ�UTC�����λ����Ӥ��б���������ͤ�UTC������λ����Ӥ��б��� (����Ū�ˤϡ�PostgreSQL�Ϥ��뤦�ä����椷�ʤ�����UT1����ѡ�)
�����ӥ��ե��åȤλ�����ʬ��
�����ӥ��ե��åȤ�ʬ����ʬ��
��������ǯ���̻��Ǥν���׻����ޤ�����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
ǯ�ե�����ɡ�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
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
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�������Ǥ���
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�Ĥη����ϴؿ��ƤӽФ��Τ���ǥե�����ͤ����Ѥ����ޤ�ɾ������ޤ��󡣤Ǥ����顢�����δؿ�������������֤�ǥե���ȤȤ��롢˾�ޤ������񤤤򤷤ޤ���
�ʲ��δؿ��ϡ������Хץ������μ¹Ԥ��ٱ䤵���뤿��˻��Ѳ�ǽ�Ǥ���
pg_sleep(seconds)
pg_sleep
�ϡ�seconds�÷в᤹��ޤǡ����ߤΥ��å����Υץ�������ٻߤ����ޤ���seconds��double precision�����ͤǤ���
���Τ��ᡢ����ñ�̤ǵٻ��ÿ�����ꤹ�뤳�Ȥ��Ǥ��ޤ����ʲ�����򼨤��ޤ���
SELECT pg_sleep(1.5);
����: �ٻ߻��֤�Í����ʬ��ǽ�ϥץ�åȥե�����˰�¸���ޤ���0.01�ä�����Ū���ͤǤ����ٱ�Ͼ��ʤ��Ȥ���ꤷ���̤�Ԥ��ޤ��������Ф���٤��װ��Ȥʤꡢ���Ĺ���ʤ��ǽ��������ޤ���
�ٹ� |
|
[1] | ���ڥ졼�ƥ��󥰥����ƥ�Ǥ��뤦�ä���������Ƥ������60�ޤǡ� |
���Υڡ��� | �ۡ��� | ���Υڡ��� |
�ǡ�����������ؿ� | ������ | ��󷿥��ݡ��ȴؿ� |