CREATE CAST (sourcetype AS targettype) WITH FUNCTION funcname (argtypes) [ AS ASSIGNMENT | AS IMPLICIT ] CREATE CAST (sourcetype AS targettype) WITHOUT FUNCTION [ AS ASSIGNMENT | AS IMPLICIT ]
CREATE CAST����Ѥ���ȡ����������㥹�Ȥ�����Ǥ��ޤ��� ���㥹�Ȥˤ�ꡢ2�ĤΥǡ������֤��Ѵ�������ˡ����ꤷ�ޤ��� �ʲ�������ޤ���
SELECT CAST(42 AS text);
���ν�����¹Ԥ���ȡ������˻��ꤵ�줿�ؿ������ξ��text(int4)��ƤӽФ����������42��text�ǡ��������Ѵ����ޤ��� (Ŭ�ڤʥ��㥹�Ȥ��������Ƥ��ʤ���硢�Ѵ������ϼ��Ԥ��ޤ���)
2�ĤΥǡ������ϡ��Х��ʥ�ߴ�����������礬����ޤ��� �Ĥޤꡢ"��ͳ��"�ؿ���ƤӽФ����Ȥʤ����ߤ��Υǡ��������Ѵ����뤳�Ȥ��Ǥ��ޤ��� ���ξ�硢�б������ͤϡ�Ʊ������ɽ������Ѥ��Ƥ���ɬ�פ�����ޤ��� �㤨�С��ǡ�����text�����varchar�ϡ��Х��ʥ�ߴ���������ޤ���
�ǥե���ȤǤϡ����㥹�Ȥ�����Ū�ʥ��㥹������ä����Τ߸ƤӽФ���ǽ�Ǥ��� ����Ū�ʥ��㥹�Ȥι�ʸ�Ȥϡ�CAST(x AS typename)���⤷���ϡ�x::typename�Ǥ���
���㥹�Ȥ�AS ASSIGNMENT���ץ������դ���ȡ��оݥǡ������������������ݡ�����Ū�ˤ��Υ��㥹�Ȥ�ƤӽФ��褦������Ǥ��ޤ��� �㤨�С�foo.f1��text������Ǥ���Ȥ��ޤ���
INSERT INTO foo (f1) VALUES (42);
integer������text�����Ѵ����륭�㥹�Ȥ�AS ASSIGNMENT���ץ�����դ����Ƥ���С��嵭��SQLʸ�ϼ¹Բ�ǽ�Ǥ��� ���ץ�����դ��Ƥ��ʤ���С��¹ԤǤ��ޤ��� (����Ū�ˡ����μ�Υ��㥹�Ȥ��������㥹���ȸƤФ�Ƥ��ޤ��� )
���㥹�Ȥ�AS IMPLICIT���ץ������դ���ȡ������Ǥ⡢�⤷���ϼ�����ˤ����ΤǤ⡢���ƤΥ���ƥ����Ȥǰ���Ū�ˤ��Υ��㥹�Ȥ�ƤӽФ��褦������Ǥ��ޤ��� �ʲ�����Ȥ��Ƥ��������� ||��text���ΰ�����������ޤ��Τǡ�
SELECT 'The time is ' || now();
�Ȥ���SQLʸ�ϡ�timestamp������text�����Ѵ����륭�㥹�Ȥ�AS IMPLICIT���ץ�����դ����Ƥ�����Τ¹Բ�ǽ�Ǥ��� ���ץ�����դ��Ƥ��ʤ���С��ʲ��Τ褦������Ū�˥��㥹�ȤҤ���ɬ�פ�����ޤ���
SELECT 'The time is ' || CAST(now() AS text);
(����Ū�ˡ����μ�Υ��㥹�Ȥ����ۥ��㥹���ȸƤФ�Ƥ��ޤ��� )
���ۥ��㥹�Ȥϡ�¿�Ѥ��ʤ����������Ǥ��� ����Ū���㥹�Ȥ���Ѥ�������ȡ�PostgreSQL�����ޥ�ɤ�פ�̰�̣�˲�ᤷ�Ƥ��ޤ������ˤʤ�ޤ��� �⤷���ϡ�ʣ���β���ǽ�ʤ��ᡢ���ޥ�ɤ��������ɤǤ��ʤ��ʤäƤ��ޤ���ǽ���⤢��ޤ��� �и�Ū�ˤϡ�Ʊ������Ū�ʥǡ��������ƥ���Υǡ������֤ǡ�������ݻ������Ѵ��ǤΤߡ����ۥ��㥹�Ȥ�ƤӽФ���ǽ�ˤ���Τ��ɤ���ˡ�Ȼפ��ޤ��� �㤨�С�int2������int4���ؤΥ��㥹�Ȥϡ����ۥ��㥹�Ȥˤ���Τ������Ǥ�����float8������int4���ؤΥ��㥹�Ȥϡ������餯�������㥹�ȤΤߤȤ��٤��Ǥ��礦�� text������int4���ؤ��Ѵ��Τ褦�ʡ����ƥ����ۤ���ǡ������Υ��㥹�Ȥϡ�����Ū�ˤΤ��Ѥ���Τ�Ŭ�ڤǤ���
���㥹�Ȥ������ǽ�ˤ���ˤϡ��Ѵ����ޤ����Ѵ���Υǡ��������ͭ���Ƥ���ɬ�פ�����ޤ��� �ޤ����Х��ʥ�ߴ��������륭�㥹�Ȥ��������ˤϡ������ѡ��桼���Ǥ���ɬ�פ�����ޤ� (�Х��ʥ�ߴ��������륭�㥹���Ѵ�����äƻ��Ѥ���ȥ����Ф�����å��夷�Ƥ��ޤ���ǽ�����⤤���Ȥ��顢�������¤��դ����ޤ���)��
���㥹�Ȥ����Ѵ����Υǡ�������̾���Ǥ���
���㥹�Ȥ����Ѵ���Υǡ�������̾���Ǥ���
���δؿ��ϡ����㥹�Ȥ�¹Ԥ��뤿��˻��Ѥ��ޤ��� �ؿ�̾�ϡ��������������뤳�Ȥ��Ǥ��ޤ��� ��������������Ƥ��ʤ���硢�ؿ��ϥ����������ѥ����鸡������ޤ��� �ؿ��η�̤Υǡ������ϥ��㥹�Ȥ��Ѵ���Υǡ������Ȱ��פ���ɬ�פ�����ޤ��� �����ˤĤ��Ƥϸ���������ޤ���
�Ѵ����ǡ�����������Ѵ���ǡ������ϡ��Х��ʥ�ߴ��������뤳�Ȥ��ޤ��� ���äơ����㥹�Ȥ�¹Ԥ���Τ˴ؿ���ɬ�פ���ޤ���
��������ƥ����Ȥǡ�����Ū�˥��㥹�Ȥ�ƤӽФ����Ȥ��Ǥ��뤳�Ȥ��ޤ���
Ǥ�դΥ���ƥ����Ȥǡ�����Ū�˥��㥹�Ȥ�ƤӽФ����Ȥ��Ǥ��뤳�Ȥ��ޤ���
���㥹�Ȥ��������ؿ���1����3�Ĥΰ������뤳�Ȥ��Ǥ��ޤ��� 1���ܤΰ������ϥ��㥹�Ȥ��Ѵ����ǡ�������Ʊ��Ǥʤ���Фʤ�ޤ��� 2���ܤΰ����ϡ��⤷����С�integer���Ǥʤ���Фʤ餺���Ѵ���η��˴�Ϣ�դ����������Ҥ�������ޤ��� �������Ҥ��ʤ�����-1��������ޤ��� 3���ܤΰ����ϡ��⤷����С�boolean���Ǥʤ���Фʤ餺�����㥹�Ȥ�����Ū�ʥ��㥹�ȤǤ����true����ʳ��Ǥ����false��������ޤ��� (��̯�Ǥ�����SQL���ͤǤϡ�����Ū���㥹�ȤȰ���Ū���㥹�ȤȤδ֤ǰۤʤ뿶���᤹���礬����ޤ��� ���ΰ����Ϥ�������������������ʤ���Фʤ�ʤ��ؿ��Ѥ�������ΤǤ��� �ȼ��Υǡ�������ή���˽����褦���߷פ��뤳�Ȥϴ�����ޤ���)
���̡����㥹�Ȥϰۤʤ��Ѵ������Ѵ���Υǡ�����������ʤ���Фʤ�ޤ��� ��������2�İʾ�ΰ������Ĵؿ��ǥ��㥹�Ȥ�����������ϡ��Ѵ������Ѵ���Ȥ�Ʊ��Υǡ���������ĥ��㥹�Ȥ�������뤳�Ȥ��Ǥ��ޤ��� ����ϡ������ƥ५�������ˤ����Ʒ���ͭ��Ĺ�������ؿ���ɽ�����뤿��˻��Ѥ���Ƥޤ��� ��̾���줿�ؿ��ϡ�2���ܤΰ�����Ϳ����줿�������Ҥ��ͤǷ����ͤ������뤿��˻��Ѥ���ޤ��� (ʸˡ�塢������Ȥ߹��ߥǡ������Τߤ��������Ҥ���Ĥ��Ȥ��Ǥ��ޤ��Τǡ����ε�ǽ���Ѵ��褬�桼������Υǡ������ξ��ˤ����Ω���ޤ��� ���������ˤ��뤿��ˤ����ǵ��Ҥ��Ƥ��ޤ���)
�Ѵ������Ѵ���Υǡ��������ۤʤ륭�㥹�Ȥǡ����δؿ���ʣ���ΰ��������硢����ϡ�����ǡ���������¾�Υǡ������ؤ��Ѵ���Ĺ���ζ�����1�Ĥ����ˤޤȤ��ΤǤ��뤳�Ȥ�ɽ���ޤ��� �����������ܤ��ʤ��ȡ��������Ҥ���Ѥ��뷿�ζ����ϡ��ǽ�˥ǡ������֤��Ѵ������˽����Ҥ�Ŭ�ѤȤ���2�Ĥ���ɬ�פȤʤ�ޤ���
�桼������Υ��㥹�Ȥ�������ˤϡ�DROP CAST����Ѥ��Ƥ���������
�ǡ����������������ѹ���ǽ�ˤ���ˤϡ��������Υ��㥹�Ȥ�����Ū���������ɬ�פ����뤳�Ȥ����դ��Ƥ���������
PostgreSQL 7.3������ΥС������Ǥϡ�����ǡ�������Ʊ��̾���ǡ����Υǡ��������֤����ۤʤ�ǡ������ΰ�����1�ļ��ؿ��ϡ���ưŪ�˥��㥹�ȴؿ��Ȥ���Ƥ��ޤ����� ���δ����ϡ��������ޤ�Ƴ�����������ƥ५�������ǥХ��ʥ�ߴ��������륭�㥹�Ȥ�ɽ����ǽ�ˤʤä����Ȥˤ�ꡢ�ػߤ���ޤ����� �Ȥ߹��ߥ��㥹�ȴؿ��ϡ��ޤ�����̿̾��§�˽��äƤ��ޤ��� ��������Ʊ�ͤ�pg_cast�����ƥ५�������ǥ��㥹�ȤȤ��Ƽ������ɬ�פ�����ޤ���
ɬ�פǤϤ���ޤ������㥹�Ȥ��������ؿ����Ѵ���Υǡ������˰����̿̾����Ȥ��������θŤ������˽���³���뤳�Ȥ�侩���ޤ��� ¿���Υ桼���ϴؿ��ͼ��ε�ˡ���Ĥޤ�typename(x)������Ѥ��ƥǡ������Υ��㥹�Ȥ��Ǥ���Ȥ������Ȥ���Ѥ��Ƥ��ޤ��� ���ε�ˡ�ϥ��㥹�Ȥ��������ؿ���ƤӽФ��Ƥ��뤳�Ȥ�¾�ʤ�ޤ��� �ä˥��㥹�ȤȤ��ư��äƤ���櫓�ǤϤʤ��ΤǤ��� �ȼ����Ѵ��ؿ���̾�������δ����˽��äƤ��ʤ��ȡ�¾�Υ桼���ϤȤޤɤ����Ȥˤʤ�ޤ��� PostgreSQL�ϰۤʤ��������Ʊ��̾���δؿ����С������ɤ��뤳�Ȥ��Ǥ��ޤ��Τǡ��͡��ʷ����餢���Ѵ��跿�ؤ�ʣ�����Ѵ��ؿ��������Ѵ���η�̾����Ѥ��ƺ������뤳�Ȥ�������ޤ���
����: �������ˤϾ����ʱ�������ޤ��� ���Τʴؿ��ƤӽФ��ΰ�̣���Τ����pg_cast�����Ѥ�����礬���뤳�ȤǤ��� �ؿ��ƤӽФ�name(x)���ºݤδؿ��˰��פ�����name���ǡ�������̾���Ǥ��ꡢpg_cast��x�η����餽�η��ؤΥ��㥹�Ȥ��Х��ʥ�ߴ��Ǥ��뤳�Ȥ��Ƥ�����硢���θƤӽФ�������Ū���㥹�ȤȤ��ƸƤӽФ���ޤ��� �����㳰�ϡ��Х��ʥ�ߴ����㥹�Ȥºݤδؿ����ʤ��ä��Ȥ��Ƥ⡢�ؿ��Τ褦�ʹ�ʸ�ǸƤӽФ����Ȥ��Ǥ���褦�˺�������ޤ�����
�ؿ�int4(text)����Ѥ���text������int4���ؤΥ��㥹�Ȥ�������ޤ���
CREATE CAST (text AS int4) WITH FUNCTION int4(text);
(���Υ��㥹�Ȥϡ������ƥ�ˤ��Ǥ˻����������Ƥ��ޤ���)