CREATE [ TEMPORARY | TEMP ] SEQUENCE name [ INCREMENT [ BY ] increment ] [ MINVALUE minvalue | NO MINVALUE ] [ MAXVALUE maxvalue | NO MAXVALUE ] [ START [ WITH ] start ] [ CACHE cache ] [ [ NO ] CYCLE ]
CREATE SEQUENCE�ϡ����������������ֹ�����������������ޤ��� ����ϡ�name�Ȥ���̾������ä���Ԥ����ο������ü�ʥơ��֥�κ����Ƚ������Ԥ��ޤ��� ���������ֹ����������ϡ����Υ��ޥ�ɤ�¹Ԥ����桼���ˤ�äƽ�ͭ����ޤ���
��������̾��Ϳ�����Ƥ����硢���Υ������ϻ��ꤵ�줿�������ޤǺ�������ޤ��� ��������̾���ʤ���С��������ϸ��ߤΥ������ޤǺ�������ޤ��� �ޤ�����������������̤ʥ������ޤ�¸�ߤ��뤿�ᡢ����������κ������˥�������̾��Ϳ���뤳�ȤϤǤ��ޤ��� ��������̾�ϡ�Ʊ�������������¾�Υ��������ơ��֥롢����ǥå������⤷���ϥӥ塼�Ȥϰۤʤ�̾���ˤ���ɬ�פ�����ޤ���
����������������塢nextval��currval��setval�ؿ�����Ѥ��ƥ����������ޤ��� ���δؿ�����9.12����������Ƥ��ޤ���
��������ľ�ܹ������뤳�ȤϤǤ��ޤ����ʲ��Τ褦���䤤��碌����ѤǤ��ޤ���
SELECT * FROM name;
�������Ѥ���ȡ��������Υѥ����ȸ��ߤξ��֤��ǧ���뤳�Ȥ��Ǥ��ޤ��� �äˡ���������last_value�ե�����ɤ����ƤΥ��å����dz�����Ƥ�줿�Ǹ���ͤ��ޤ��� (����������ͤ�ɽ�����줿�����ǡ�¾�Υ��å�����nextval�μ¹Ԥˤ��Ť��ʤäƤ�����⤢��ޤ���)
���ꤵ�줿��硢���Υ��������֥������ȤϤ��Υ��å�����Ѥ����Ȥ��ƺ������졢���å����λ���˼�ưŪ�˺������ޤ��� �����������¸�ߤ����硢Ʊ��̾������Ĵ�¸�α�³�������ϥ������������줿̾���ǻ��Ȥ���Ƥ��ʤ���С�(���Υ��å����Ǥ�)��Ļ�Ǥ���
�������륷������̾���Ǥ� (����������̾�Ǥ��)��
��ά��ǽ��INCREMENT BY increment��ϡ����ߤΥ��������ͤ��鿷�����ͤ����������������ޤ�������̤����ꤷ�ޤ��� �����ͤϾ���Υ�����������ͤϹ߽�Υ�������������ޤ��� ���ꤷ�ʤ����Υǥե�����ͤ�1�Ǥ���
��ά��ǽ��MINVALUE minvalue��ϡ��������Ȥ��ƺ����Ǥ���Ǿ����ͤ���ꤷ�ޤ��� ���ζ�λ��꤬�ʤ����⤷���ϡ�NO MINVALUE�����ꤵ�줿��硢�ǥե���Ȥ����Ѥ���ޤ��� ����ȹ߽�Υ������Υǥե�����ͤϡ����줾��1��-(263-1)�Ǥ���
��ά��ǽ��MAXVALUE maxvalue��ϡ��������κ����ͤ���ꤷ�ޤ��� ���ζ�λ��꤬�ʤ����⤷���ϡ�NO MAXVALUE�����ꤵ�줿��硢�ǥե���Ȥ����Ѥ���ޤ��� ����ȹ߽�Τ��줾��Υ��������ֹ�κ����ͤΥǥե���Ȥϡ�263-1��-1�Ǥ���
��ά��ǽ��START WITH start��ˤ�äơ���������ɤ�����Ǥ�Ϥ�뤳�Ȥ��Ǥ��ޤ��� �ǥե���ȤǤϡ����������ֹ椬�Ϥޤ��ͤϡ�����ξ��minvalue�ˡ��߽�ξ��maxvalue�ˤʤ�ޤ���
CACHE cache���ץ����ϡ��ɤΤ��餤�ο��Υ��������ֹ�餫�����ֹ�������ơ�����˳�Ǽ���뤫����ꤷ�ޤ�������ˤ�ꥢ���������®�ˤ��뤳�Ȥ��Ǥ��ޤ��� �Ǿ��ͤ�1�ʤ����1��ˤĤ�1�Ĥ��ͤ������������ޤ����Ĥޤꥭ��å���Ϥ���ޤ���ˤǡ����줬�ǥե���Ȥˤ�ʤäƤ��ޤ���
CYCLE���ץ����ˤ�äơ����硢���뤤�Ϲ߽�Υ��������ֹ椬�����줾��maxvalue�ޤ���minvalue���ͤ�ã�������ˡ����������᤹���Ȥ��Ǥ��ޤ��� �⤷���������ֹ�θ³��ͤޤ�ã������硢��������������ֹ��minvalue�ޤ���maxvalue�Τɤ��餫�ˤʤ�ޤ���
NO CYCLE�����ꤵ�줿��硢���¤�ã�������nextval�ƤӽФ��ϥ��顼�ˤʤ�ޤ��� CYCLE��NO CYCLE����ꤵ��ʤ����ϡ�NO CYCLE���ǥե���ȤǤ���
��������������ˤ�DROP SEQUENCE����Ѥ��Ƥ���������
��������bigint���Ѥ˴�Ť��Ƥ��ޤ��� ���Τ��ᡢ8�Х����������ϰ�(-9223372036854775808����9223372036854775807�ޤ�)��ۤ��뤳�ȤϤǤ��ޤ��� �Ť�Υץ�åȥե�����Ǥϡ�8�Х��������ݡ��Ȥ��륳��ѥ��餬�ʤ����Ȥ�����ޤ��� ���ξ�硢���������̾��integer���Ѥ���Ѥ��ޤ���(�����ϰϤ�-2147483648����+2147483647�ޤǤǤ���)
1����礭���ͤ����ꤵ�줿cache�����������֥������Ȥǻ��Ѥ��줿��硢���Υ�������ʣ���Υ��å�����Ʊ���˻��Ѥ�������ͽ�۳��η�̤ˤʤ��礬����ޤ��� �ƥ��å����ϡ����å�����������֥������Ȥ˥�����������ȡ�Ϣ³���륷�������ͤ������ƥ���å��夷�ޤ��� �����ơ������ȼ�������������֥������Ȥ�last_value�����ä��ޤ��� ����ˤ�ꡢ���Υ��å������ˤ����뤽�θ��cache-1��λ��ѤǤϡ�������ƺѤߤ��ͤ�ñ���֤������������֥������Ȥ��ѹ�����ޤ��� ���å����ˤ����Ƴ�����Ƥ�줿�����Ѥ���ʤ��ä��ֹ�ϡ����å����ν�λ�������Ƽ����ޤ��Τǡ���̤Ȥ��ƥ�������"��"���Ǥ��ޤ���
���ˡ�ʣ���Υ��å����ˤϸ��̤Υ��������ͤ�������Ƥ��뤳�Ȥ��ݾڤ���Ƥ��ޤ��������ƤΥ��å����º�Ť����ȡ����������ͤϽ����̤�ˤʤ�ʤ����Ȥ�����ޤ��� �㤨�С�cache��10�ξ���ͤ��ޤ��� ���å����A�Ǥ�1����10�ޤǤ���ݤ���nextval=1���֤��ޤ��� ���å����B�Ǥϡ����å����A��nextval=2���֤����ˡ�11����20����ݤ���nextval=11���֤��ޤ��� ���äơ�cache��1�����ꤷ������nextval��Ϣ³�����ͤ��������뤳�Ȥ�����Ȥ��Ƥ����ꤢ��ޤ���1����礭���ͤ�cache�����ꤵ���ȡ�nextval���ͤ�������Ϣ³���Ƥ���ΤǤϤʤ��������ۤʤ��ͤȤʤ�Ȥ������Ȥ�������Ȥ��뤳�Ȥ��Ǥ��ޤ��� �ޤ���last_value�ϡ������ͤ�nextval���֤��줿���ɤ����˴ط��ʤ������ƤΥ��å����dz��ݤ��줿�Ǹ���ͤ�ȿ�Ǥ��ޤ���
����¾���������ä����������Ф��Ƽ¹Ԥ����setval��¾�Υ��å����Ǥϡ�����å��夷��������ƺѤ��ͤ����ƻȤ��̤����ޤǡ�ʬ����ʤ��Ȥ������Ȥ��θ���٤��Ǥ���
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;