CREATE [ TEMPORARY | TEMP ] SEQUENCE seqname [ INCREMENT increment ] [ MINVALUE minvalue ] [ MAXVALUE maxvalue ] [ START start ] [ CACHE cache ] [ CYCLE ]
���ꤵ�줿��硢���Υ��������֥������ȤϤ��Υ��å�����Ѥ����Ȥ��ƺ������졢���å����λ���˼�ưŪ�˺������ޤ���Ʊ��̾���ΰ����������¸�ߤ����硢��¸�α�³��������(���Υ��å����Ǥ�)��Ļ�Ǥ���
��������륷������̾���Ǥ���
��ά��ǽ�� INCREMENT increment ��ϡ������̤����ꤷ�ޤ��������ͤϾ���Υ��������ֹ桢����ͤϹ߽�Υ��������ֹ��������ޤ������ꤷ�ʤ����Υǥե�����ͤ� 1 �Ǥ�
��ά��ǽ�� MINVALUE minvalue ��ϡ����������ֹ�Ȥ��ƺ����Ǥ���Ǿ����ͤ���ꤷ�ޤ�������ȹ߽�Υ������Υǥե�����ͤϡ����줾�� 1 �� -2^63-1 �Ǥ���
��ά��ǽ�� MAXVALUE maxvalue ��ϡ����������ֹ�κ����ͤ���ꤷ�ޤ�������ȹ߽�Τ��줾��Υ��������ֹ�κ����ͤΥǥե���Ȥϡ�2^63-1��-1�Ǥ���
��ά��ǽ�� START start ��ˤ�äơ���������ɤ�����Ǥ�Ϥ�뤳�Ȥ��Ǥ��ޤ����ǥե���ȤǤϡ����������ֹ椬�Ϥޤ��ͤϡ�����ξ�� minvalue �ˡ��߽�ξ�� maxvalue�ˤʤ�ޤ���
CACHE cache ���ץ����ˤ�äơ����餫����������ֹ�������ơ���������˳�Ǽ���Ƥ������Ȥǥ����������®�ˤ��뤳�Ȥ��Ǥ��ޤ����Ǿ��ͤ�1�ʤ����1��ˤĤ�1�Ĥ��ͤ������������ޤ����Ĥޤꥭ��å���Ϥ���ޤ���ˤǡ����줬�ǥե���Ȥˤ�ʤäƤ��ޤ���
���ץ�����CYCLE������ɤϡ����硢���뤤�Ϲ߽�Υ��������ֹ椬�����줾�� maxvalue�ޤ��� minvalue���ͤ�ã�����Ȥ��ˡ����������᤹���Ȥ��ǽ�ˤ��뤿��˻Ȥ��ޤ����⤷���������ֹ�θ³��ͤޤ�ã������硢��������������ֹ��minvalue �ޤ��� maxvalue �Τɤ��餫�ˤʤ�ޤ���CYCLE �λ��꤬�ʤ���硢���¤�ã������� nextval �ƤӽФ��ϥ��顼�ˤʤ�ޤ���
���ޥ�ɤ��������������֤�����å������Ǥ���
���ꤷ�������������Ǥ�¸�ߤ��Ƥ�����Υ�å������Ǥ���
�ϰϳ��ν���ͤ����ꤵ�줿���Ǥ��ʺ����Ͱʾ���ͤ����ꤵ��ޤ����ˡ�
�ϰϳ��ν���ͤ����ꤵ��ޤ����ʺǾ��ͤ�꾮�����ͤ����ꤵ��ޤ����ˡ�
�Ǿ��͡������ͤ����̷꤬�⤷�Ƥ��ޤ��ʺǾ��ͤ��������ͤ���礭���ͤ����ꤵ��ޤ����ˡ�
CREATE SEQUENCE�ϡ����������������ֹ����������ߤΥǡ����١����������Ͽ���ޤ�������ϡ�seqname �Ȥ���̾������ä���Ԥ����ο������ơ��֥�κ����Ƚ������Ԥ��ޤ������������ֹ����������ϡ����Υ��ޥ�ɤ�¹Ԥ����桼���ˤ�äƽ�ͭ����ޤ���
����������������塢 nextval�� currval�� setval �ؿ�����Ѥ��ƥ����������ޤ������δؿ��� �桼�������� ����������Ƥ��ޤ���
��������ľ�ܹ������뤳�ȤϤǤ��ޤ���
SELECT * FROM seqname;
�Ȥ����䤤��碌����Ѥ��ơ��������Υѥ����ȸ��ߤξ��֤��ǧ���뤳�Ȥ��Ǥ��ޤ����äˡ��������� last_value �ե�����ɤ����ƤΥХå�����ɥץ������dz�����Ƥ�줿�Ǹ���ͤ��ޤ���(����������ͤ�ɽ�����줿�����ǡ�¾�Υץ������� nextval �μ¹Ԥˤ��Ť��ʤäƤ�����⤢��ޤ���)
Caution |
�⤷��ʣ���ΥХå�����ɤˤ�ä�Ʊ���˻��Ѥ�����ǽ���Τ��륷�������֥������Ȥ��Ф���cache ���꤬1�����礭����硢ͽ�۳��η�̤Ȥʤ뤳�Ȥ�����ޤ������줾��ΥХå�����ɤϥ��������֥������Ȥ˥����������뤿�Ӥ�Ϣ³�������������ͤ������ơ�����å��夷������˱����ƥ��������֥������Ȥ� last_value �����䤷�ޤ������ˡ����ΥХå�����ɤˤ����롢����³�� cache - 1 ��� nextval �λ��Ѥ϶�ͭ���֥������Ȥ˿��뤳�Ȥʤ��������˳�����Ƥ�줿�ͤ��֤��ޤ����������äơ�������Ƥ��Ƥ⡢���ꤵ�줿���å����ǻȤ��ʤ��ä��ʥ��������ֹ���˴�����ޤ�������ˡ�ʣ���ΥХå�����ɤϽ�ʣ���ʤ����������ֹ椬������Ƥ��뤳�Ȥ��ݾڤ���Ƥ��ޤ����������ͤϤ��٤ƤΥХå�����ɤ��оݤˤ�����硢������դ��Ƥ��뤫���꤫�Ǥ���ޤ���ʤ��Ȥ��С� cache ���꤬10�ȤʤäƤ��ơ��Хå������A��1...10�ޤǤ��ͤ�ͽ��nextval=1���֤��Ȥ�����硢�Хå������B ��11...20���ͤ�ͽ�ƥХå������A��nextval=2��������������nextval=11���֤����Ȥ�����ޤ��ˡ����äơ�cache���꤬ 1 �ξ�硢nextval ���ͤ�Ϣ³Ū���������������ꤹ�뤳�Ȥϰ����Ǥ�����cache ���꤬ 1 ����礭���Ȥ��ϡ�nextval ���ͤϤ��٤ƽ�ʣ���ʤ��ͤˤʤ�ޤ����������Ͻ���Ϣ³Ū�����������Ȥ����櫓�ǤϤ���ޤ���Ʊ�ͤˡ�last_value �ϡ�nextval �ˤ�äƤɤ���ͤ��֤���뤫�Ȥ������Ȥˤ�����餺���Хå�����ɤˤ�äư��ֺǶ��ͽ�줿�ͤ�ȿ�Ǥ��Ƥ��ޤ����⤦1�Ĺ�θ����٤����ϡ����Τ褦�ʥ������Ǽ¹Ԥ��줿 setval �ϥ���å��夷�Ƥ�������äƳ�����Ƥ�줿�ͤ�Ȥ��ڤ�ޤ�¾�ΥХå�����ɤˤ�ǧ������ʤ��Ȥ������ȤǤ��� |
��������������ˤ�DROP SEQUENCE��Ȥ��ޤ���
�������� bigint ���Ѥ˴�Ť��Ƥ��ޤ������Τ��ᡢ8 �Х����������ϰ�(-9223372036854775808 ���� 9223372036854775807�ޤ�)��ۤ��뤳�ȤϤǤ��ޤ��Ť�Υץ�åȥե�����Ǥϡ�8�Х��������ݡ��Ȥ��륳��ѥ��餬�ʤ����Ȥ�����ޤ������ξ�硢���������̾�� integer ���Ѥ���Ѥ��ޤ���(�����ϰϤ� -2147483648 ���� +2147483647�ޤǤǤ���)
cache �� 1 �ʾ�ξ�硢���줾��ΥХå�����ɤ�����äƳ�����Ƥ�줿�ֹ���Ǽ���뤿��˼��Ȥ��ȼ��Υ���å����Ȥ��ޤ�������å��夵��Ƥ��Ƹ��ߤΥ��å����ǤϻȤ��Ƥ��ʤ��ֹ�Ͼä��Ƥ��ޤ����ᡢ���Υ������ˤ�"��"�������Ƥ��ޤ��ޤ���
101����Ϥޤ�serial�Ȥ���̾���ξ��祷��������ˤϰʲ��Τ褦�ˤ��ޤ���
CREATE SEQUENCE serial START 101;
���Υ��������鼡���ֹ������ˤϰʲ��Τ褦�ˤ��ޤ���
SELECT nextval('serial'); nextval ------- 114
�ʲ��Τ褦�ˤ��ơ����Υ������� INSERT �ǻ��Ѥ��ޤ���
INSERT INTO distributors VALUES (nextval('serial'), 'nothing');
COPY FROM �θ�ǥ��������ͤ�����ˤϰʲ��Τ褦�ˤ��ޤ���
BEGIN; COPY distributors FROM 'input_file'; SELECT setval('serial', max(id)) FROM distributors; END;