PostgreSQL 9.0.4ʸ�� | ||||
---|---|---|---|---|
前のページ | 巻戻し | 第 4章SQL�ι�ʸ | 早送り | 次のページ |
SQL�����Ϥϡ��Ҥ�³�������ޥ������ʤ�ޤ��� ���ޥ�ɤ��ȡ��������Ҥ��ä���Τǹ������졢�Ǹ�ϥ��ߥ������";"�ˤǽ����ޤ��� ���ϥ��ȥ��ν�λ���Ϥꥳ�ޥ�ɤ�餻�ޤ��� �ɤΥȡ�����ͭ����������Υ��ޥ�ɤι�ʸ�ˤ��ޤ���
�ȡ������������������̻���������ǰϤޤ줿���̻�����ƥ���ʤ⤷��������ˡ����̤�ʸ������ܥ�Ǥ��� �ȡ�������̾����ʥ��ڡ��������֡����ԡˤǶ��ڤ��ޤ�����ۣ�椵���ʤ���Сʰ���Ū�ˤ����̤�ʸ����¾�Υȡ��������ܤ��Ƥ�����Τߡ�ɬ�פ���ޤ���
����ˡ����Ϥ��줿SQL�����������դ��Ƥ��Ƥ���ޤ��� �����Ȥϥȡ�����ǤϤʤ������θ��̤϶����Ʊ���Ǥ���
�㤨�С��ʲ��Τ�Τϡʹ�ʸŪ�ˡ�������SQL�����ϤǤ���
SELECT * FROM MY_TABLE; UPDATE MY_TABLE SET A = 5; INSERT INTO MY_TABLE VALUES (3, 'hi there');
�������1�Ԥ�1�ĤΥ��ޥ�ɤҤ�����3�ĤΥ��ޥ�ɤ�Ϣ³���Ƥ��ޤ���ɬ������1�ĤΥ��ޥ�ɤ�1�Ԥǽ�ɬ�פϤ���ޤ��� 1�Ԥ�ʣ���Υ��ޥ�ɤ����Ϥ��뤳�Ȥ��ǽ�Ǥ�����1�ĤΥ��ޥ�ɤ�ʣ���Ԥ�ʬ���Ƶ��Ҥ��뤳�Ȥ��ǽ�Ǥ��ˡ�
SQL��ʸ�ϡ��ɤΥȡ������ޥ�ɤ��̤����ɤ줬���ڥ��ɤǤɤ줬�ѥ������˴ؤ��ƤϤ��ۤɼ�����Ӥ��Ƥ��ޤ��� �ǽ�Τ����Ĥ��Υȡ�����ϰ��̤˥��ޥ��̾�Ǥ��� �������äơ��嵭����ˤ�����"SELECT"��"UPDATE"��"INSERT"���ޥ�ɤˤĤ����̾��������뤳�Ȥˤʤ�ޤ��� ���������㤨��UPDATE���ޥ�ɤǤϡ�SET�ȡ���������ΰ��֤˾�˵��Ҥ���ʤ���Фʤ�ޤ���������ǻȤ��Ƥ���INSERT���ޥ�ɤ뤹�뤿��ˤ�VALUES�ȡ�����ɬ�פǤ��� ���줾��Υ��ޥ�ɤ����Τʹ�ʸ��§��パートVI����������Ƥ��ޤ���
�嵭����˽ФƤ���SELECT��UPDATE���⤷����VALUES�Τ褦�ʥȡ�����ϡ���������ΰ���Ǥ��� ������ɤȤϡ�SQL����Ƿ�ޤä���̣����äƤ���ñ��Ǥ��� MY_TABLE�ȡ������A�ȡ���������̻��ΰ���Ǥ��� �����ϡ��Ȥ��륳�ޥ�ɤˤ�äơ��ơ��֥롢��¾�Υǡ����١������֥������Ȥ�̾�����̤��ޤ��� �������äơ�ñ��"̾��"�ȸƤФ�뤳�Ȥ⤢��ޤ��� ������ɤȼ��̻Ҥ�Ʊ�����äι�¤����Ĥ��ᡢ������Τ�ʤ��Ƥϥȡ������̻ҤʤΤ�������ɤʤΤ��狼��ʤ��Ȥ������Ȥˤʤ�ޤ��� ���ƤΥ�����ɤΥꥹ�Ȥ�付録C�ˤ���ޤ���
SQL���̻Ҥȥ�����ɤϡ�ʸ����a��z�����ȯ����������դ�ʸ������Latinʸ��)�����������������_�ˤǻϤޤ�ʤ���Ф����ޤ��� ���̻Ҥޤ��ϥ�����ɤ����³��ʸ���ϡ�ʸ�������������������������0��9�ˤ��뤤�ϥɥ뵭��($)����Ѥ��뤳�Ȥ��Ǥ��ޤ��� ɸ��SQL�ε��Ҥ˽����ȡ��ɥ뵭��ϼ��̻���Ǥϻ��ѤǤ��ʤ����Ȥ����դ��Ƥ��������� �Ǥ����顢�������Ѥ���ȥ��ץꥱ�������ΰܿ������㤯�ʤ��ǽ��������ޤ��� ɸ��SQL�Ǥϡ�������ޤࡢ���뤤�ϥ�������������ǻϤޤä��꽪��ä��ꤹ�륭����ɤ��������Ƥ��ޤ��� �������äơ����η����μ��̻Ҥ�ɸ��κ���γ�ĥ�ȶ��礹���ǽ�����ʤ��Ȥ�����̣�ǰ����ȸ����ޤ���
�����ƥ��NAMEDATALEN-1�Х��Ȥ��Ĺ�����̻Ҥ�ʸ������Ȥ��ޤ��� ���Ĺ��̾���ޥ�ɤǽ��ȤϤǤ��ޤ�����û���ڤ��Ƥ��ޤ��ޤ��� �ǥե���ȤǤ�NAMEDATALEN��64�ʤΤǡ����̻ҤϺ�Ĺ��63�Х��ȤǤ��� �������¤�����ˤʤ���ϡ�src/include/pg_config_manual.h���NAMEDATALEN������ͤ��ѹ��������䤹���Ȥ��Ǥ��ޤ���
������ɤȰ������դ��Ǥʤ�(�������Ȥ���Ƥ��ʤ�)���̻Ҥ���ʸ���Ⱦ�ʸ������̤��ޤ��� �������äơ�
UPDATE MY_TABLE SET A = 5;
�ϡ��ʲ���ʸ��Ʊ����̣�ˤʤ�ޤ���
uPDaTE my_TabLE SeT a = 5;
����Ū�ˤϡ�������ɤ���ʸ���ǡ�̾����ʸ���ǽޤ��� �㤨�в����Τ褦�ˤʤ�ޤ���
UPDATE my_table SET a = 5;
���̻Ҥˤ�����Ū�ʼ���⤢��ޤ��� ���ڤ꼱�̻����뤤���������դ����̻��Ǥ��� Ǥ�դ�ʸ����Ϣ�ʤ����Ű������"�ˤǰϤ����ΤǤ��� ���ڤ꼱�̻ҤϾ�˼��̻ҤǤ��äơ�������ɤǤϤ���ޤ��� �Ǥ����顢"select"��"select"�Ȥ���̾�����뤤�ϥơ��֥���䤤��碌�뤿��˻Ȥ��ޤ�������������դ��ʤ�select�ϥ�����ɤȤ��������Τǡ��ơ��֥�⤷������̾�����Ԥ������ʬ�Ǥϲ��ϥ��顼�����ޤ��� �������դ����̻Ҥϲ�������Τ褦�˽��Ȥ��Ǥ��ޤ���
UPDATE "my_table" SET "a" = 5;
�������դ����̻Ҥϡ�ʸ��������0�ʳ��Ǥ���ФɤΤ褦��ʸ���Ǥ�Ȥ��ޤ� ����Ű������ޤ�����ϡ���Ű������2�����Ϥ��ޤ��ˡ� ���η�ޤ꤬���뤳�Ȥˤ�äơ����ʻȤ��ʤ�����䥢��ѥ���ɡ�&�ˤ�ޤ�ơ��֥�̾����̾���뤳�Ȥ���ǽ�Ǥ��� ���ξ��ˤ����Ƥ�Ĺ�������¤�Ŭ�Ѥ���ޤ���
�������դ����̻Ҥ��Ѱ��ΤϤ����Υ������ֹ�Ǽ��̤���륨�������פ��줿Unicodeʸ����ޤळ�Ȥ��Ǥ��ޤ��� �����Ѱ��Τϡ���Ű����䳫�Ϥ�ľ����U&�ʸ�˥���ѥ���ɤ��դ�����ʸ������ʸ����U�ˤǻϤޤ�ޤ��� �㤨�С�U&"foo"�Ȥʤ�ޤ��� �ʤ���ˤ��黻��&�Ȥ����������������뤳�Ȥ����դ��Ƥ��������� ������������ˤ϶����黻�Ҥ����������ޤ����� ���������ǡ�Unicodeʸ���ϥХå�����å���Ȥ����³�����壱���ʿ���ʸ���������ֹ�ǡ��ޤ��Ϥ⤦���Ĥ���ˡ�Ȥ��ơ��Хå�����å����³���ƥץ饹��桢������³�������壱���ʿ���ʸ���������ֹ�ˤ�ꥨ�����������ǻ��ꤵ��ޤ��� �㤨�С����̻�"data"�ϼ��Τ褦�˽�ޤ���
U&"d\0061t\+000061"
���Τ�����Ū�Ǥʤ���ϥ��������"slon"�ʾݡˤ���ǽ���ΤǤ���
U&"\0441\043B\043E\043D"
�Хå�����å���ǤϤʤ��ۤʤ륨��������ʸ������Ѥ�������硢ʸ����θ��UESCAPE�����Ѥ��ƻ��ꤹ�뤳�Ȥ���ǽ�Ǥ�������ޤ���
U&"d!0061t!+000061" UESCAPE '!'
����������ʸ���ˤϡ�16��ɽ���Ѥ�ʸ�����ץ饹���桢ñ������䡢��Ű����䡢����ʸ���ʳ���Ǥ�դ�ñ��ʸ������Ѥ��뤳�Ȥ��Ǥ��ޤ��� ����������ʸ���ˤ���Ű�����ǤϤʤ�ñ�������ǵ��Ҥ��Ƥ��뤳�Ȥ����դ��Ƥ���������
���̻���˥���������ʸ���Τޤޤ�뤿��ˤϡ�����ĵ��Ҥ��Ƥ���������
Unicode����������ʸ�ϥ����Ф���沽������UTF8�ξ��Τ�ͭ���Ǥ���¾�Υ�������沽�������Ѥ����Ƥ����硢ASCII�ϰϡ�\007F�ޤǡˤΥ����ɥݥ���ȤΤ���Ǥ��ޤ�������Ū�ˤ�6������ε�ǽ�ˤ�ꤳ������פˤʤ�ޤ�����4��ޤ���6��η����ϡ�U+FFFF����礭�ʥ����ɥݥ���Ȥ����ʸ����������UTF-16���������ȥڥ�����ꤹ�뤿��˻��Ѥ��뤳�Ȥ��Ǥ��ޤ����ʥ����Ф���沽������UTF8�ξ��˥��������ȥڥ������Ѥ��������ޤ�ñ��Υ����ɥݥ���Ȥ��Ȥ߹�蘆�졢���θ��UTF-8����沽����ޤ�����
�����䤬�դ��ʤ�̾���Ͼ�˾�ʸ���˲�ᤵ��ޤ��������̻Ҥ������ǰϤळ�Ȥˤ�ä���ʸ���Ⱦ�ʸ�������̤����褦�ˤʤ�ޤ��� �㤨�С����̻�FOO��foo��"foo"��PostgreSQL�ˤ���Ʊ����ΤȤ��Ʋ�ᤵ��ޤ�����"Foo"��"FOO"�ϡ������3�ĤȤ⡢�ޤ����ߤ��˰�ä���ΤȤ��Ʋ�ᤵ��ޤ� ��PostgreSQL����������դ��ʤ�̾����ʸ���Ȥ��Ʋ�᤹�뤳�Ȥ�ɸ��SQL�ȸߴ���������ޤ���ɸ��SQL�Ǥϰ�������դ��ʤ�̾������ʸ���˲�ᤵ���٤����Ȥ���Ƥ��ޤ��� �������ä�ɸ��SQL�ˤ��С�foo��"FOO"��Ʊ���Ǥ���٤��ǡ�"foo"�Ȥϰۤʤ�Ϥ��ʤΤǤ��� �⤷�ܿ���ǽ�ʥ��ץꥱ������������ʤ�С������̾���Ͼ�˰�����ǰϤफ�����뤤�Ϥޤä����Ϥޤʤ����Τ����줫�����줹�뤳�Ȥ��ᤷ�ޤ��ˡ�
PostgreSQL�ˤϡ�3�Ĥ����ۤ˷��դ���������������ޤ��� ʸ���ӥå�ʸ�������ƿ����Ǥ��� ���������Ū�ʷ��ǻ��ꤹ�뤳�Ȥ�Ǥ������ξ��ϥ����ƥ�ˤ�롢������Τ�ɽ���ȸ�Ψ���ɤ�����ǽ�ˤʤ�ޤ��� ��������¾����ˡ�ˤĤ��Ƥϸ�ۤ��������ޤ���
SQL�ˤ�����ʸ��������ϡ�ñ��������'�ˤdz��줿Ǥ�դ�ʸ�����¤ӤǤ��� �㤨�С�'This is a string'�Ǥ��� ʸ����������ñ�������ε�����ˡ�ϡ�2��³����ñ�������Ҥ��뤳�ȤǤ��� �㤨�С�'Dianne''s horse'�Ǥ��� ��Ű�����(")�Ȥ�Ʊ��Ǥ��ʤ��������դ��Ƥ���������
2�Ĥ�ʸ��������������ʤ��Ȥ�1�Ĥβ�����ޤ������Ƕ��ڤ��Ƥ�����ϡ�2�Ĥ������Ϣ�뤵�졢�¼�Ū��1�Ĥ�����Ȥ��ƽ줿�褦�˽�������ޤ��� ����ޤ���
SELECT 'foo' 'bar';
�ϡ�
SELECT 'foobar';
��Ʊ���Ǥ�����������
SELECT 'foo' 'bar';
��ͭ���ʹ�ʸ�ǤϤ���ޤ��� �ʤ��Τ���äȤ�����̯�ʿ���SQL�Ƿ����Ƥ����Τǡ�PostgreSQL�ǤϤ���ɸ��˽��äƤ��ޤ��ˡ�
PostgreSQL�Ǥϡ��ޤ���"����������"ʸ�����������դ��ޤ��� �����ɸ��SQL�γ�ĥ�Ǥ��� ����������ʸ������ϡ�����ñ��������ľ����E(��ʸ���Ǥ⾮ʸ���Ǥ⤫�ޤ��ޤ���)�Ҥ��뤳�Ȥǻ��ꤵ��ޤ��� �㤨��E'foo'�Ǥ��� ��ʣ���Ԥ��Ϥ륨��������ʸ������Ǥϡ��ǽ�γ��ϰ���������ˤΤ�E�Ҥ��Ƥ����������� ����������ʸ�������Ǥϡ��Хå�����å���ʸ����\�ˤˤ��C����Τ褦���Хå�����å��������������Ϥ���������ǥХå�����å���Ȥ����³��ʸ�����Ȥ߹�碌����表4-1�Ǽ������褦�ˡ����̤ʥХ����ͤ�ɽ�����ޤ���
表 4-1. �Хå�����å��奨�������ץ�������
Backslash Escape Sequence | ��� |
---|---|
\b | ���� |
\f | ���ڡ��� |
\n | ���� |
\r | ���� |
\t | ���� |
\o, \oo, \ooo (o = 0 - 7) | ���ʿ��Х����� |
\xh, \xhh (h = 0 - 9, A - F) | �����ʿ��Х����� |
\uxxxx, \Uxxxxxxxx (x = 0 - 9, A - F) | 16�⤷����32�ӥåȤ�16�ʿ� Unicode ʸ���� |
�Хå�����å���θ�Τ��Τۤ������Ƥ�ʸ���Ϥ��Τޤް����ޤ������äơ��Хå�����å���ʸ����ޤޤ���Ȥ��ϣ��ĤΥХå�����å����\\�ˤܤ��ޤ���Ʊ���ˡ�����������ʸ�������Σ��Ĥ�ñ�������ϡ��̾����ˡ��''�˲ä���\'�Ȥ��ƴޤळ�Ȥ��Ǥ��ޤ���
�ä�10�ʿ���16�ʿ����������פ��Ѥ��ƺ��������Х��ȥ���������������ʸ�����å���沽�����ˤ�����ͭ����ʸ���ǹ�������Ƥ��뤳�Ȥϥ����ɤ�ͤ���Ǥ�Ǥ�����������沽������UTF-8�ξ�硢Unicode���������פ���項4.1.2.3�����������⤦������Unicode����������ʸ������Ȥ��ƻ��Ѥ��ʤ���Фʤ�ޤ�����Ƥϼ��Ȥ�UTF-8��沽��Ԥ����Ф��ʤ��ƤϤʤ�ʤ��ΤǤȤƤ����Ǥ�����
Unicode����������ʸ�ϡ������Ф���沽������UTF8�Ǥ�����Τߡ�������ư��ޤ���¾�Υ�������沽���������Ѥ���Ƥ����硢ASCII�ϰϡ�\u007F�ޤǡˤΥ����ɥݥ���ȤΤߤ���ꤹ�뤳�Ȥ��Ǥ��ޤ�������Ū�ˤ�8������ε�ǽ�ˤ�ꤳ������פˤʤ�ޤ�����4��ޤ���8��η����ϡ�U+FFFF����礭�ʥ����ɥݥ���Ȥ����ʸ����������UTF-16���������ȥڥ�����ꤹ�뤿��˻��Ѥ��뤳�Ȥ��Ǥ��ޤ����ʥ����Ф���沽������UTF8�ξ��˥��������ȥڥ������Ѥ��������ޤ�ñ��Υ����ɥݥ���Ȥ��Ȥ߹�蘆�졢���θ��UTF-8����沽����ޤ�����
注意 |
����ѥ���standard_conforming_strings�� off�ξ�硢PostgreSQL�ϥХå�����å��奨�������פ��̾��ʸ������ȥ���������ʸ�������ξ����ǧ�����ޤ��� ����ϡ��Хå�����å��奨�������פ����ǧ�������Ȥ������Ū��ư��Τ���Ρ������ߴ�����ݻ����뤿��Τ�ΤǤ��� ����standard_conforming_strings�ϥǥե���Ȥ�off�Ǥ�����ɸ��ߴ�������뤿��˺���Υ����ǥǥե����on���ѹ�����뤫�⤷��ޤ��� �Ǥ��Τǡ����ץꥱ�������ǤϥХå�����å��奨�������פλ��Ѥ���ܹԤ��ʤ���Фʤ�ޤ��� �ü�ʸ����ɽ�����뤿��˥Хå�����å������Ѥ���ɬ�פ������硢E��Ĥ���ʸ��������Ҥ�������Υ����Ǥ�μ¤�Ʊ�ͤ˰�����褦�ˤ��Ƥ��������� standard_conforming_strings��¾�ˡ�����ѥ���escape_string_warning�����backslash_quote��ʸ�������ΥХå�����å����ư�����ꤷ�ޤ��� |
�����ɥ�����ʸ����ʸ������������������ޤ���
PostgreSQL��Ʊ���ˡ�ʸ���������ֹ��Ǥ�դ�Unicodeʸ��������ǽ���̤�ʸ������Ф��륨��������ʸ�����ޤ��� Unicode����������ʸ��������ϡ����ϰ������ľ����U&�ʸ�˥���ѥ���ɤ��դ�����ʸ������ʸ����U�ˤǻϤޤ�ޤ��� �㤨�С�U&'foo'�Ȥʤ�ޤ��� �ʤ���ˤ��黻��&�Ȥ����������������뤳�Ȥ����դ��Ƥ��������� ������������ˤ϶����黻�Ҥ����������ޤ����� ���������ǡ�Unicodeʸ���ϥХå�����å���Ȥ����³�����壱���ʿ���ʸ���������ֹ�ǡ��ޤ��Ϥ⤦���Ĥ���ˡ�Ȥ��ơ��Хå�����å����³���ƥץ饹��桢������³�������壱���ʿ���ʸ���������ֹ�ˤ�ꥨ�����������ǻ��ꤵ��ޤ��� �㤨�С�ʸ����'data'�ϼ��Τ褦�˽�ޤ���
U&'d\0061t\+000061'
���Τ�����Ū�Ǥʤ���ϥ��������"slon"�ʾݡˤ��ʸ���ǽ���ΤǤ���
U&'\0441\043B\043E\043D'
�Хå�����å���ǤϤʤ��ۤʤ륨��������ʸ������Ѥ�������硢ʸ����θ��UESCAPE�����Ѥ��ƻ��ꤹ�뤳�Ȥ���ǽ�Ǥ�������ޤ���
U&'d!0061t!+000061' UESCAPE '!'
����������ʸ���ˤϡ�16��ɽ���Ѥ�ʸ�����ץ饹���桢ñ������䡢��Ű����䡢����ʸ���ʳ���Ǥ�դ�ñ��ʸ������Ѥ��뤳�Ȥ��Ǥ��ޤ���
Unicode����������ʸ�ϥ����Ф���沽������UTF8�ξ��Τ�ͭ���Ǥ���¾�Υ�������沽�������Ѥ����Ƥ����硢ASCII�ϰϡ�\007F�ޤǡˤΥ����ɥݥ���ȤΤ���Ǥ��ޤ�������Ū�ˤ�6������ε�ǽ�ˤ�ꤳ������פˤʤ�ޤ�����4��ޤ���6��η����ϡ�U+FFFF����礭�ʥ����ɥݥ���Ȥ����ʸ����������UTF-16���������ȥڥ�����ꤹ�뤿��˻��Ѥ��뤳�Ȥ��Ǥ��ޤ����ʥ����Ф���沽������UTF8�ξ��˥��������ȥڥ������Ѥ��������ޤ�ñ��Υ����ɥݥ���Ȥ��Ȥ߹�蘆�졢���θ��UTF-8����沽����ޤ�����
Ʊ�ͤˡ�ʸ����������Ф����˥����ɥ���������ʸ������ѥ���standard_conforming_strings��ͭ���ʤȤ��Τ�ư��ޤ��������Ǥʤ��Ȥ��ι�ʸ�ϡ�SQL�����������ȡ���������������ƥ�����˷Ҥ�������ޤ�SQLʸ��ʸ��᤹�륯�饤����Ȥ��Ǥ魯���Ȥˤʤ뤫��Ǥ���
ʸ�������ˡ�ʸ���ɤ���˥���������ʸ������礹��ˤϥ���������ʸ����ޤ���
SQL�ˤ�����ʸ��������λ��깽ʸ�Ϥ����Ƥ��ξ�������Ǥ������оݤȤ���ʸ�������¿����ñ��������Хå�����å��夬����ȡ�������������Ťˤ��ʤ���Фʤ�ޤ���Τ����Ť餯�ʤ�ޤ��� �������������ˤ����Ƥ��䤤��碌�β�����������뤿���PostgreSQL�ϡ�"�ɥ�������դ�"�Ȥ���¾��ʸ��������λ�����ˡ�����ޤ��� �ɥ�������դ����줿ʸ��������ϡ��ɥ뵭���$�ˡ���ά��ǽ��0�İʾ��ʸ������ʤ�"����"���ɥ뵭�桢ʸ���������������Ǥ�դ�ʸ�����¤ӡ��ɥ뵭�桢���ΰ������դ��λϤ�˻��ꤷ����Τ�Ʊ���������ɥ뵭�椫�鹽������ޤ��� �㤨�С�"Dianne's horse"�Ȥ���ʸ�����ɥ�������դ�����Ѥ��ƻ��ꤹ����ˡ�ˤϡ��ʲ���2�Ĥ�����ޤ���
$$Dianne's horse$$ $SomeTag$Dianne's horse$SomeTag$
�ɥ�������դ����줿ʸ����ϴ��˥��������פ���Ƥ��ޤ��Τǡ�ʸ������������Ƥ��Τޤ��Ҥ��뤳�Ȥ��Ǥ��ޤ��� �����¤Ӥ����ϥ����˰��פ��ʤ��¤ꡢ�Хå�����å����ɥ뵭������̤ʤ�ΤǤϤ���ޤ���
������ҥ�٥�˰ۤʤ륿�����դ��뤳�Ȥǡ��ɥ�������դ����줿ʸ���������Ҥˤ��뤳�Ȥ��Ǥ��ޤ��� ����ϡ��ؿ�������������������ˤ褯���Ѥ���ޤ��� �ʲ�������ޤ���
$function$ BEGIN RETURN ($1 ~ $q$[\t\r\n\v\\]$q$); END; $function$
�����ǡ�$q$[\t\r\n\v\\]$q$�ϡ��ɥ�������դ����줿[\t\r\n\v\\]��ƥ��ʸ�����ɽ����PostgreSQL�����δؿ����Τ�¹Ԥ������ǧ������ޤ��� �������������¤Ӥϡ���¦�Υɥ�������Ѥζ��ڤ�ʸ��$function$�˰��פ��ޤ���Τǡ���¦��ʸ������оݤȤ��Ƥ������ñ�ʤ�ʸ�����¤ӤȤʤ�ޤ���
�⤷����С��ɥ�������դ����줿ʸ����Υ����ϡ��������դ�����Ƥ��ʤ����̻Ҥ�Ʊ����§�˽����ޤ��� �������������ˤϥɥ뵭���ޤ�뤳�ȤϤǤ��ޤ��� ��������ʸ����ʸ������̤��ޤ��� �������äơ�$tag$String content$tag$���������ΤǤ�����$TAG$String content$tag$�ϴְ㤤�Ǥ���
������ɤ伱�̻Ҥθ�˥ɥ�������դ����줿ʸ�����³������ϡ�����Ǥ������ڤ�ʤ���Фʤ�ޤ��� ����ʤ��ȡ��ɥ������ζ��ڤ�ʸ���ϡ�ľ���μ��̻Ҥΰ����Ȥ��Ʋ�ᤵ��ޤ���
�ɥ�������դ��ϡ�ɸ��SQL���������Ƥ��ޤ��� ��������ʣ����ʸ�����ƥ��Ҥ������ɸ�����ñ������乽ʸ���������ʤ��Ȥ��褯����ޤ��� �äˡ�¾�������������ʸ��������Ҥ���褦�ʾ������Ω���ޤ��� �������������ϼ�³���ؿ�������Ǥ褯ɬ�פȤ���ޤ��� ñ������乽ʸ�Ǥϡ������ΥХå�����å���Ϥ��줾�졢4�ĤΥХå�����å���ǵ��Ҥ��ʤ���Фʤ�ޤ��� ����4�ĤΥХå�����å���ϡ�����ʸ�����������Ϥ���ݤ�2�Ĥ˸������졢�����ơ��ؿ���¹Ԥ���ݤ�������ʸ����������Ʋ��Ϥ���1�Ĥ˸������ޤ���
�ӥå�ʸ���������B����ʸ���⤷���Ͼ�ʸ���ˤ�������λϤޤ�������դ��Ƥ���ʴ֤˶���Ϥ���ޤ�����̾��ʸ��������Τ褦�˸����ޤ��� �㤨��B'1001'�Τ褦�ˤʤ�ޤ��� �ӥå�ʸ�����������ǵ��Ĥ����ʸ����0��1�ΤߤǤ���
����¾�ˤ⡢�ӥå�ʸ���������X'1FF'�Ȥ��ä����ˡ���Ƭ��X����ʸ���ޤ��Ͼ�ʸ���ˤ���Ѥ���16��ɽ���ǻ��ꤹ�뤳�Ȥ�Ǥ��ޤ��� ����ɽ���ϡ���16�ʿ��ͤ줾��4�Ĥ�2�ʿ��ͤ��֤��������ӥå�ʸ���������Ʊ���Ǥ���
�ɤ���η����Υӥå�ʸ��������Ǥ⡢�̾��ʸ���������Ʊ���褦��ʣ���Ԥˤ錄�ä�³���ƽ��Ȥ��Ǥ��ޤ��� �ɥ�������դ��ϥӥå�ʸ��������Ǥϻ��ѤǤ��ޤ���
��������ϲ����ΰ���Ū�ʷ��Ǽ����դ����ޤ���
digits digits.[digits][e[+-]digits] [digits].digits[e[+-]digits] digitse[+-]digits
������digits��1�İʾ��10�ʿ�����0��9�ˤǤ��� ����������Ѥ�����ϡ����ʤ��Ȥ�1�Ĥο�������������������ˤʤ��ƤϤʤ�ޤ��� �ؿ�����e���դ�������Ȥ����ˤ�e�θ�˾��ʤ��Ȥ�1�Ĥο������ʤ���Ф����ޤ��� �����¾��ʸ���ϡ��������������ळ�ȤϤǤ��ޤ��� �ץ饹�ޤ��ϥޥ��ʥ���������Ƭ�ˤĤ��Ƥ⡢����ΰ����ȤϤߤʤ���ʤ����Ȥ����դ��Ƥ��������� ���������������Ŭ�Ѥ����黻�ҤȤߤʤ���ޤ���
������ͭ���ʿ�������Τ����Ĥ�����Ǥ���
42
3.5
4.
.001
5e2
1.925e-3
��������ؿ���ޤޤʤ���������ξ�硢�ޤ������ͤ�integer����32�ӥåȡˤ�Ŭ�礹���integer���Ǥ���Ȥߤʤ���ޤ��� �����Ǥʤ���硢bigint����64�ӥåȡˤ�Ŭ�礹���bigint���Ȥߤʤ���ޤ��� �ɤ���Ǥ�ʤ����ϡ�numeric���Ȥߤʤ���ޤ��� ������������ޤ��ϻؿ����뤤�Ϥ���ξ����ޤ���ϡ���˺ǽ��numeric���Ǥ���Ȥߤʤ���ޤ���
��������˺ǽ�˳�꿶����ǡ������ϡ�����襢�르�ꥺ��γ������˲�ޤ��� �ۤȤ�ɤξ�硢����ˤ�ʸ̮�˴�Ť��Ƽ�ưŪ��������������꿶���ޤ��� ɬ�פǤ���С�����Υǡ������㥹�Ȥ��ơ����ͤ����Υǡ������Ȥ��Ʋ�ᤵ���褦�˶������뤳�Ȥ��Ǥ��ޤ��� �㤨�С��ʲ��Τ褦�ˤ��ƿ��ͤ�real����float4�ˤȤ��ƽ������뤳�Ȥ��Ǥ��ޤ���
REAL '1.23' -- ʸ����� 1.23::REAL -- �����Ū�ʡ�PostgreSQL��
�¤ΤȤ����������ϰʲ��������������Ū�ʥ��㥹�ȵ�ˡ�����̤ʾ��Ǥ���
Ǥ�դ���������ϲ�����ɽ���Τ����줫��Ȥä����Ϥ��뤳�Ȥ��Ǥ��ޤ���
type 'string' 'string'::type CAST ( 'string' AS type )
ʸ��������Υƥ����Ȥ�type�ȸƤФ�뷿�������Ѵ��롼����ؤ��Ϥ���ޤ��� ��̤ϻؼ����줿��������Ǥ��� ����Ū�ʷ����㥹�Ȥϡ�������ɤη��Ǥʤ���Фʤ�ʤ����ˤĤ���ۣ��������ʤ���С��㤨�������ľ�ܥơ��֥������������Ƥ�����˾�ά���Ƥ���ޤ��� ���ξ�缫ưŪ�˷���������ޤ���
ʸ����������̾��SQL��ˡ�Ǥ�ɥ�������դ��Ǥ�Ҥ��뤳�Ȥ��Ǥ��ޤ���
�ؿ��Τ褦�ʹ�ʸ��ȤäƷ���������ꤹ�뤳�Ȥ��ǽ�Ǥ���
typename ( 'string' )
�����������Ƥη���̾���Ǥ�����ˡ�ϻ��ѤǤ���Ȥ����櫓�ǤϤ���ޤ��� �ܺ٤�項4.2.9�Ȥ��Ƥ���������
::��CAST()��ؿ��ƤӽФ���ʸ�⡢項4.2.9�����������̤ꡢǤ�դμ��μ¹Ի��η��Ѵ�����ꤹ�뤿��˻Ȥ����Ȥ��Ǥ��ޤ��� ����������ʸŪ�ʤ����ޤ�����ʤ�������ˡ�type 'string'�Ȥ���������ñ�ʤ��ƥ���������ꤹ����ˤΤȤ����Ȥ��Ǥ��ޤ��� ����¾type 'string'��ʸ�ˤϡ����Ǥ�ư��ʤ��Ȥ������¤�����ޤ��� �����������ꤹ�����::��CAST()����Ѥ��Ƥ���������
CAST()��ʸ��SQL�˽��äƤ��ޤ��� type 'string'��ʸ�ϡ�ɸ�����̲�������ΤǤ��� SQL�Ǥϡ����ι�ʸ����ĤΥǡ������ǤΤߵ��ꤷ�Ƥ��ޤ��� ��������PostgreSQL�ǤϤ��٤Ƥη��ǻ��Ѥ��뤳�Ȥ��Ǥ��ޤ��� ::�դ��ι�ʸ�ϡ��ؿ��ƤӽФ���ʸ��Ʊ�ͤ����Ū��PostgreSQL�ǻ��Ѥ���Ƥ��ޤ�����
�黻�Ҥ�NAMEDATALEN-1�ޤǤΡʥǥե���Ȥ�63��Ĺ���Ρ��ʲ��˼����ꥹ�Ȥ˴ޤޤ��ʸ�����¤ӤǤ���
+ - * / < > = ~ ! @ # % ^ & | ` ?
���������黻�Ҥ�̾���ˤϤ����Ĥ���������ޤ���--��/*�ϱ黻��̾����˻Ȥ����Ȥ��Ǥ��ޤ��� �ʤ��ʤ餳���ϥ����ȤλϤޤ�Ȳ�ᤵ��뤫��Ǥ���
ʣ��ʸ���α黻��̾�ϡ�����̾�������ʤ��ȤⲼ����ʸ����1�İʾ��ޤޤʤ��¤ꡢ+��-�ǽ���뤳�Ȥ��Ǥ��ޤ���
~ ! @ # % ^ & | ` ?
�㤨�С�@-�ϱ黻��̾�Ȥ���ǧ����Ƥ��ޤ�����*-��ǧ����Ƥ��ޤ��� �������¤ˤ��PostgreSQL�ϡ�SQL�˽���䤤��碌��ȡ�����Ʊ�Τδ֤˶�����᤻�������Ϥ��뤳�Ȥ��Ǥ��ޤ���
��SQLɸ��α黻��̾��Ȥ���硢�̾��ۣ�椵����뤿��ˡ��٤��ä��黻�Ҥ����Ƕ��ڤ�ɬ�פ�����ޤ��� �㤨��@�Ȥ�����ñ��黻�Ҥ����������硢X*@Y�ȤϽޤ��� PostgreSQL�������μ¤�1�ĤǤϤʤ�2�Ĥα黻��̾�Ȥ��Ʋ��Ǥ���褦�ˡ�X* @Y�Ƚ�ɬ�פ�����ޤ���
�ѿ����ǤϤʤ������Ĥ���ʸ���ϡ��黻�ҤǤ��뤳�ȤȤϰۤʤ��ü�ʰ�̣����äƤ��ޤ��� ����ˡ�ξܺ٤Ϥ��줾��ι�ʸ���ǤˤĤ��ƤΤȤ������������ޤ��� ����Ǥϡ�ñ�ˤ���¸�ߤ��Τ餻��������ʸ������Ū��ޤȤ���α��ޤ���
ľ��˿�����³���ɥ뵭���$�ˤϡ��ؿ���������Τޤ��ϥץ�ڥ���ʸ��ΰ��֥ѥ�����ɽ������˻Ȥ��ޤ��� ¾��ʸ̮�Ǥϥɥ뵭��ϱ黻��̾�ΰ����Ǥ��뤫�⤷��ޤ����ɥ�������դ����줿ʸ��������ΰ����Ȥ��뤳�Ȥ��Ǥ��ޤ���
��̡�()�ˤϡ��̾��̤꼰��ޤȤ�ͥ�褹��Ȥ�����̣������ޤ��� ���ˤ�äƤϳ�̤ϡ������SQL���ޥ�ɤθ��깽ʸ�ΰ����Ȥ����ᤵ��뤳�Ȥ�����ޤ���
���̡�[]�ˤϡ��������Ǥ����뤿��˻Ȥ��ޤ��� ����˴ؤ���ܤ��������項8.14�Ȥ��Ƥ���������
����ޡ�,�ˤϡ��ꥹ�Ȥ����Ǥ���ڤ뤿��˹�ʸŪ��¤�ΤǻȤ��뤳�Ȥ�����ޤ���
���ߥ������;�ˤϡ�SQL���ޥ�ɤν������̣���ޤ��� ʸ��������ޤ��ϰ������դ����̻Ұʳ��Ǥϡ����ޥ�ɤ�����ǤϻȤ����Ȥ��Ǥ��ޤ���
�������:�ˤϡ�����"����ʬ"����Ф�����˻Ȥ��ޤ� (項8.14�Ȥ��Ƥ��������ˡ� �����Ĥ���SQL������������SQL�ʤɡˤǤϡ���������ѿ�̾����Ƭ���Ȥ��ƻȤ��ޤ���
�������ꥹ����*�ˤϡ������Ĥ���ʸ̮�ˤ����ơ��ơ��֥�Ԥ�ʣ�緿�����ƤΥե�����ɤ�ɽ�����뤿��˻��Ѥ���ޤ��� �ޤ�������ؿ��ΰ����Ȥ��ƻȤ�������ü�ʡ��Ĥޤꡢ���ν�������Ū�ʥѥ�����ޤä���ɬ�פȤ��ʤ��Ȥ�����̣������ޤ���
�ԥꥪ�ɡ�.�ˤϿ����������ǻȤ��ޤ��� �ޤ����������ޡ��ơ��֥롢��̾����ڤ뤿��ˤ�Ȥ��ޤ���
�����Ȥ���ťϥ��ե�ǻϤޤ�ʸ�����¤Ӥǡ��Ԥν����ޤ�³���ޤ��� �㤨�аʲ��Τ褦�ˤʤ�ޤ���
-- �����ɸ��SQL�Υ����ȤǤ�
¾�ˤ⡢C�����ͼ��Υ֥��å������Ȥ���ѤǤ��ޤ���
/* �ͥ��Ȥ��줿ʣ���Ԥˤ錄�� * ������ /* �ͥ��Ȥ��줿�֥��å������� */ */
�����Ȥ�/*�ǻϤޤꡢ�б�����*/�ǽ����ޤ��� �����Υ֥��å������Ȥ�C����Ȥϰۤʤꡢɸ��SQL�ǵ��ꤵ��Ƥ���褦������Ҥˤ��뤳�Ȥ��Ǥ��ޤ��� �������äơ���¸�Υ֥��å������Ȥ�ޤ��ǽ���Τ����礭�ʥ����ɤΥ֥��å����ȥ����Ȥ��뤳�Ȥ��Ǥ��ޤ���
�����Ȥϡ����θ�ι�ʸ���Ϥ��Ԥ����������ϥ��ȥ�फ������졢����ˤ�ä�Ŭ�ڤ��֤��������ޤ���
表4-2�ϡ�PostgreSQL�α黻�Ҥ�ͥ���̤ȷ�������Ƥ��ޤ��� �ۤȤ�ɤα黻�Ҥ�Ʊ��ͥ���̤����������礷�ޤ��� �黻�Ҥ�ͥ���̤ȷ�����ϥѡ������Ȥ߹��ޤ�Ƥ��ޤ��� �������ľ��Ū��ư���Ƴ����ǽ��������ޤ��� �㤨�С��֡��ꥢ��黻��<��>�ϡ��֡��ꥢ��黻��<=��>=�Ȥϰ�ä�ͥ���̤�����ޤ��� ����ˡ����黻�Ҥ�ñ��黻�Ҥ��Ȥ߹�碌�ƻȤ����ϳ�̤�ä���ɬ�פ������礬����ޤ��� �㤨�в����Τ褦�ʾ��Ǥ���
SELECT 5 ! - 6;
�ϡ�
SELECT 5 ! (- 6);
�Ȳ��Ϥ���ޤ��� �ʤ��ʤ�С��ѡ�����!�����֤ǤϤʤ������黻�ҤȤ����������Ƥ��뤳�Ȥ˺Ǹ�ޤǵ����դ��ʤ�����Ǥ��� ���ξ�硢�����̤����뤿��ˤϲ����Τ褦�˽�ɬ�פ�����ޤ���
SELECT (5 !) - 6;
���줬��ĥ�������Τ�����Ǥ���
表 4-2. �黻�Ҥ�ͥ���̡ʶ�����Τ����
�黻��/���� | ����� | ���� |
---|---|---|
. | �� | �ơ��֥�/��̾�ζ��ڤ�ʸ�� |
:: | �� | PostgreSQL�����η����㥹�� |
[ ] | �� | ������������ |
- | �� | ñ�ฺ�� |
^ | �� | �߾� |
* / % | �� | �ݤ�������껻����; |
+ - | �� | �û������� |
IS | IS TRUE��IS FALSE��IS UNKNOWN��IS NULL | |
ISNULL | NULL���ɤ����� | |
NOTNULL | ��NULL���ɤ����� | |
�ʤ���¾�� | �� | ����¾���Ƥ��Ȥ߹��ߡ����뤤�ϥ桼������α黻�� |
IN | ���Х��åפ����ꤹ�� | |
BETWEEN | �ϰ���˴�ͭ | |
OVERLAPS | ���ֳִ֤ν�ʣ | |
LIKE ILIKE SIMILAR | ʸ����ѥ�����ΰ��� | |
< > | ���ʤꡢ��ʤ� | |
= | �� | ������������ |
NOT | �� | �������� |
AND | �� | ������ |
OR | �� | ������ |
�黻��ͥ���̤ε�§�ϡ��嵭�ǿ��줿�Ȥ߹��߱黻�Ҥ�Ʊ��̾������ĥ桼������黻�Ҥˤ����ƤϤޤ�ޤ��� �㤨�Ф⤷"+"�黻�Ҥ��ȼ��Υǡ��������������ȡ��������黻�Ҥ����뤫�ˤ�����餺��"+"�Ȥ߹��߱黻�Ҥ�Ʊ��ͥ���̤���Ĥ褦�ˤʤ�ޤ���
������Τ褦�ˡ�OPERATOR��ʸ�ǥ������ޤǽ������줿�黻��̾����Ѥ����硢
SELECT 3 OPERATOR(pg_catalog.+) 4;
OPERATOR��ʸ�ϡ�表4-2��"����¾"�黻�ҤǼ�����Ƥ���ǥե���Ȥ�ͥ���̤���ĤȤߤʤ���ޤ��� ����ϡ�OPERATOR()�ˤɤ�����α黻�Ҥ�������Ǥ��Ѥ��ޤ���