¾�ΥС�������ʸ�� �� 17 | 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

CREATE OPERATOR CLASS

名前

CREATE OPERATOR CLASS --  �������黻�ҥ��饹���������

概要

CREATE OPERATOR CLASS name [ DEFAULT ] FOR TYPE data_type
  USING index_method [ FAMILY family_name ] AS
  {  OPERATOR strategy_number operator_name [ ( op_type, op_type ) ] [ FOR SEARCH | FOR ORDER BY sort_family_name ]
   | FUNCTION support_number [ ( op_type [ , op_type ] ) ] function_name ( argument_type [, ...] )
   | STORAGE storage_type
  } [, ... ]

����

CREATE OPERATOR CLASS�Ͽ������黻�ҥ��饹��������ޤ��� �黻�ҥ��饹�ϡ�����Υǡ�����������ǥå����ǤɤΤ褦�˻��Ѥ���뤫��������ޤ��� �黻�ҥ��饹�ˤ�ꡢ�ǡ���������ӥ���ǥå����᥽�åɤ���������⤷����"��ά"�ˡ��ɤα黻�Ҥ���Ѥ��뤫�����ꤵ��ޤ��� �ޤ�������ǥå���������Ф��Ʊ黻�ҥ��饹�����򤵤��ݡ��黻�ҥ��饹�ˤ�äƥ���ǥå����᥽�åɤ����Ѥ��륵�ݡ��ȥץ��������㤬���ꤵ��ޤ��� �黻�ҥ��饹�ǻ��Ѥ�������Ƥα黻�Ҥ���Ӵؿ��ϡ��黻�ҥ��饹������Ǥ���褦�ˤʤ�����������Ƥ���ɬ�פ�����ޤ���

��������̾��Ϳ�����Ƥ����硢���α黻�ҥ��饹�ϻ��ꤵ�줿�������ޤǺ�������ޤ��� ��������̾���ʤ���С��黻�ҥ��饹�ϸ��ߤΥ������ޤǺ�������ޤ��� �ۤʤ륤��ǥå����᥽�åɤ˻��Ѥ�����Τߡ�Ʊ�������������2�Ĥα黻�ҥ��饹��Ʊ��̾�����դ��뤳�Ȥ��Ǥ��ޤ���

�黻�ҥ��饹�ϡ��������������桼������ͭ�ԤȤʤ�ޤ��� ���ߡ��黻�ҥ��饹���������ˤϡ������ѡ��桼���Ǥ���ɬ�פ�����ޤ��� �ʸ��ä��黻�ҥ��饹���������ȡ�����θ��Ȥʤꡢ�����Х���å���θ����Ȥ����ʤ����뤿�ᡢ�������¤��դ����Ƥ��ޤ��ˡ�

���ߡ�CREATE OPERATOR CLASS�Ǥϡ�����ǥå����᥽�åɤ�ɬ�פ����Ƥα黻�Ҥ���Ӵؿ����黻�ҥ��饹����˴ޤޤ�Ƥ��뤫�ɤ������ޤ����黻�Ҥ�ؿ��η��������켫�Ȥ�����������äƤ��뤫�򸡺����ޤ��� �桼������Ǥ�ˤ����ơ�ͭ���ʱ黻�ҥ��饹��������Ƥ���������

��Ϣ����黻�ҥ��饹���黻��²�ˤޤȤ�뤳�Ȥ��Ǥ��ޤ��� ��¸�α黻��²�˿������黻�ҥ��饹���ɲä��뤿��ˤϡ�CREATE OPERATOR CLASS��FAMILY���ץ�������ꤷ�Ƥ��������� ���Υ��ץ�������ꤷ�ʤ��ȡ��������黻�ҥ��饹�Ϥ��Υ��饹��Ʊ��̾���α黻��²����֤���ޤ��ʤ⤷���α黻��²��¸�ߤ��ʤ����ϱ黻��²��������ޤ��ˡ�

�ܺ٤ˤĤ��Ƥ�項35.14�򻲾Ȥ��Ƥ���������

�ѥ�᡼��

name

��������黻�ҥ��饹��̾���Ǥ��� �黻�ҥ��饹̾�ϡ��������޽������뤳�Ȥ��Ǥ��ޤ���

DEFAULT

DEFAULT���դ���ȡ����α黻�ҥ��饹�������Υǡ������Υǥե���ȤΥ���ǥå����黻�ҥ��饹�ˤʤ�ޤ��� ����Υǡ���������ӥ���ǥå����᥽�åɤΥǥե���ȤˤǤ���黻�ҥ��饹��1�ĤΤߤǤ���

data_type

���α黻�ҥ��饹����Ѥ�����Υǡ������Ǥ���

index_method

���α黻�ҥ��饹����Ѥ��륤��ǥå����᥽�åɤ�̾���Ǥ���

family_name

�����������饹���ɲ���Ȥʤ��¸�α黻��²��̾���Ǥ��� ���ꤵ��ʤ���硢�黻�ҥ��饹��Ʊ��̾���α黻��²�����Ѥ���ޤ���¸�ߤ��ʤ����ϱ黻��²��������ޤ��ˡ�

strategy_number

�黻�ҥ��饹�˴�Ϣ����黻�ҤΥ���ǥå����᥽�åɤ���ά�ֹ�Ǥ���

operator_name

�黻�ҥ��饹�˴�Ϣ����黻�Ҥ�̾���Ǥ��ʥ������޽���̾�Ǥ�ġˡ�

op_type

OPERATOR��Ǥϡ��黻�Ҥ����ϥǡ��������⤷���ϡ���ñ��黻�Ҥ���ñ��黻�Ҥ�ɽ��NONE����ꤷ�ޤ��� �黻�ҥ��饹�Υǡ�������Ʊ���Ǥ����̾�ξ�硢���ϥǡ������Ͼ�ά��ǽ�Ǥ���

FUNCTION��Ǥϡ��ؿ������ϥǡ�������B-Tree��Ӵؿ�����ӥϥå���ؿ��ѡˤޤ��ϥ��饹�Υǡ�������B-tree�����ȥ��ݡ��ȴؿ���GiST��SP-GiST��GIN�黻�ҥ��饹�Τ��٤Ƥδؿ��ѡˤȰۤʤ��硢�ؿ������ݡ��Ȥ���ͽ��α黻�оݥǡ������Ǥ��� �����Υǥե���ȤϾ�����ΤǤ��� ���Τ��ᡢ�������ǡ�������٤�����Ӥ򥵥ݡ��Ȥ���ͽ���B-tree�����ȥ��ݡ��ȴؿ��Ͻ�����FUNCTION���op_type����ꤹ��ɬ�פϤ���ޤ���

sort_family_name

����դ��黻�Ҥ˴�Ϣ���������Ƚ���򵭽Ҥ��롢��¸��btree�黻��²��̾���ʥ������޽����ġˤǤ���

FOR SEARCH��FOR ORDER BY����ꤵ��Ƥ��ʤ���硢FOR SEARCH���ǥե���ȤǤ���

support_number

�黻�ҥ��饹�˴�Ϣ����ؿ��ѤΥ���ǥå����᥽�åɤΥ��ݡ��ȥץ�����������ֹ�Ǥ���

function_name

�黻�ҥ��饹�ѤΥ���ǥå����᥽�åɤΥ��ݡ��ȥץ���������Ȥʤ�ؿ���̾���Ǥ��ʥ������޽���̾�Ǥ�ġˡ�

argument_type

�ؿ��Υѥ�᡼���Υǡ������Ǥ���

storage_type

����ǥå����˼ºݤ˳�Ǽ�����ǡ������Ǥ��� �̾���Υǡ���������Υǡ�������Ʊ���Ǥ��� ���������ۤʤ�ǡ���������Ĥ��륤��ǥå����᥽�åɤ�¸�ߤ��ޤ��ʸ������Ǥ�GiST��GIN�ˡ� ����ǥå����᥽�åɤ��ۤʤ�ǡ������λ��Ѥ���Ĥ��Ƥ��ʤ���С�STORAGE�����ꤷ�ƤϤ����ޤ���

OPERATOR��FUNCTION��STORAGE��Ǥ�դν��֤ǵ��ҤǤ��ޤ���

����

����ǥå��������ϡ����Ѥ������˴ؿ��˴ؤ��륢���������¤򸡺����ޤ���Τǡ� �ؿ���黻�Ҥ�黻�ҥ��饹�˴ޤ�뤳�Ȥϡ�PUBLIC�˼¹Ը��¤�Ϳ���뤳�Ȥ�Ʊ���Ǥ��� �̾�黻�ҥ��饹��ͭ�Ѥʼ���δؿ��ǤϤ��������ˤʤ�ޤ���

�黻�Ҥ�SQL�ؿ���������ƤϤʤ�ޤ��� SQL�ؿ��ϸƤӽФ������䤤��碌�˥���饤�󲽤���뤳�Ȥ�¿���Τǡ����ץƥ��ޥ����Ǥ����䤤��碌������ǥå����˰��פ��뤫�ɤ�����ǧ���Ǥ��ʤ��ʤäƤ��ޤ�����Ǥ���

PostgreSQL 8.4������ޤǤϡ�OPERATOR���RECHECK���ץ�����ޤ�뤳�Ȥ��Ǥ��ޤ����� ����ǥå����黻�Ҥ�"»��������"���ɤ����ϼ¹Ի��ˤ��ξ�Ƿ��ꤵ���褦�ˤʤ�ޤ����Τǡ�����ϥ��ݡ��Ȥ���ʤ��ʤ�ޤ����� ����ˤ�ꡢ�黻�Ҥ�»�������뤫�⤷��ʤ����ʤ����⤷��ʤ��褦�ʾ����ΨŪ�˰������Ȥ��Ǥ���褦�ˤʤ�ޤ�����

��

�ʲ��Υ��ޥ����Ǥϡ�_int4�ǡ�������int4������ˤ�GiST����ǥå����黻�ҥ��饹��������Ƥ��ޤ��� ������ξܺ٤ˤĤ��Ƥϡ�intarray�⥸�塼��򻲾Ȥ��Ƥ���������

CREATE OPERATOR CLASS gist__int_ops
    DEFAULT FOR TYPE _int4 USING gist AS
        OPERATOR        3       &&,
        OPERATOR        6       = (anyarray, anyarray),
        OPERATOR        7       @>,
        OPERATOR        8       <@,
        OPERATOR        20      @@ (_int4, query_int),
        FUNCTION        1       g_int_consistent (internal, _int4, int, oid, internal),
        FUNCTION        2       g_int_union (internal, internal),
        FUNCTION        3       g_int_compress (internal),
        FUNCTION        4       g_int_decompress (internal),
        FUNCTION        5       g_int_penalty (internal, internal, internal),
        FUNCTION        6       g_int_picksplit (internal, internal),
        FUNCTION        7       g_int_same (_int4, _int4, internal);

�ߴ���

CREATE OPERATOR CLASS��PostgreSQL�γ�ĥ�Ǥ��� ɸ��SQL�ˤ�CREATE OPERATOR CLASSʸ�Ϥ���ޤ���

��Ϣ����

ALTER OPERATOR CLASS, DROP OPERATOR CLASS, CREATE OPERATOR FAMILY, ALTER OPERATOR FAMILY