�ȥꥬ�ˤ�äƹԤ���¿�������� PostgreSQL�Υ롼�륷���ƥ�Ǽ�����ǽ�Ǥ������ºݤ˥롼��Ǽ����Ǥ��ʤ���ΤϤ���������˴ؤ��ƤǤ����⤷¾�Υơ��֥������ͤ��ʤ��ä���硢���롼����䤤��碌��NOTHING�˽����Ƥ��ޤ����Ȥ��ǽ�Ǥ���������Ǥϥǡ��������ޤäƾõ��Ƥ��ޤ����褤�����ǥ����ȤϤ����ޤ���ͭ�����ͤ��ɤ����Υ����å���ɬ�פǡ�̵�����ͤˤĤ��Ƥϥ��顼��å�������ɽ������ɬ�פ�����ʤ顢���Τ��ȤϺ��ΤȤ����ȥꥬ��ȤäƹԤ�ʤ���Фʤ�ޤ���
�������ӥ塼���INSERT�ˤ�äƵ�ư���줿�ȥꥬ�ϡ��ǡ�����ɤ������������ӥ塼�ؤ�������ػߤ���롼���Ʊ�����Ȥ��Ǥ��ޤ���������UPDATE�ޤ���DELETE�Ǥϥ�������¥ǡ������ӥ塼��졼������¸�ߤ��ʤ��Τǥȥꥬ���ƤФ�뤳�Ȥ��ʤ�������㤷�Ƥ��ޤ����롼��Dz�褹�뤷������ޤ���
������ˤ�äƤ��������뤳���ε�ǽ�˴ؤ��Ƥɤ��餬�٥��Ȥ��ϥǡ����١����λ���ˡ�ˤ��ޤ����ȥꥬ�ϤɤιԤˤ������Ƥ���٤�����ư���ޤ����롼��ϥѡ����ĥ�����뤫�ɲäΥѡ����ĥ���������ޤ����Ǥ����顢1�Ĥ�̿��ʸ��¿���ιԤ˱ƶ���Ϳ�����硢1�ĤιԤ�������뤿�Ӥ˸ƤӽФ��졢���μ¹Ԥ��Ԥ�ʤ���Фʤ�ʤ��ȥꥬ���⡢1�Ĥ��̤��䤤��碌��ȯ�Ԥ���롼��Τۤ����̾�褤Ư���ޤ���
���Ȥ��С�2�ĤΥơ��֥뤬����Ȥ��ޤ���
CREATE TABLE computer ( hostname text, -- indexed manufacturer text -- indexed ); CREATE TABLE software ( software text, -- indexed hostname text -- indexed );
2�ĤΥơ��֥�ˤ϶��˿���ιԤ����äơ�hostname��κ����ϰ�դǤ���hostname����ˤϥ���ԥ塼����FQDN�����Хɥᥤ��̾�ˤ�����ޤ����롼��/�ȥꥬ�Ϻ�����줿�ۥ��ȤȤ��롢software�ˤ�����Ԥκ�������¤��ʤ���Фʤ�ޤ��ȥꥬ��computer ���������줿���줾�����Ω�����ԤǸƤӽФ���ޤ��Τǡ��ʲ��Τ褦��̿��ʸ����������¸���줿�ײ����ǻ��Ѥ����ѥ������ hostname ������Ϥ����Ȥ��Ǥ��ޤ���
DELETE FROM software WHERE hostname = $1;
���ΤȤ��Υ롼��ϰʲ��Τ褦�˽�ɽ�����Ȥ��Ǥ��ޤ���
CREATE RULE computer_del AS ON DELETE TO computer DO DELETE FROM software WHERE hostname = OLD.hostname;
�����ǡ��ۤʤä�����κ���ˤĤ��Ƹ��Ƥߤޤ��礦��
DELETE FROM computer WHERE hostname = 'mypc.local.net';
���ξ�硢�ơ��֥�computer�ϥ���ǥå����ǥ������ʹ�®�Ǥ��ˡ��ȥꥬ�ˤ�ä�ȯ�Ԥ��줿�䤤��碌��Ʊ�ͥ���ǥå����������Ȥʤ�ޤ��ʤ�����®�Ǥ��ˡ��롼�뤫������̤��䤤��碌�ϰʲ��Τ褦�ˤʤ�ޤ���
DELETE FROM software WHERE computer.hostname = 'mypc.local.net' AND software.hostname = computer.hostname;
�����ˤ�Ŭ�ڤʥ���ǥå������Ѱդ���Ƥ���Τǡ��ץ��ʤϰʲ��ηײ���������ޤ���
�ͥ��ȥ롼�� -> computer ��� comp_hostidx ��Ȥä�����ǥå���������� -> software ��� soft_hostidx ��Ȥä�����ǥå����������
�ȥꥬ�ȥ롼������δ֤ǽ���®�٤κ��Ϥ���ۤɤϤʤ��Ǥ��礦�����κ�������Ǥ�hostname����old�פǻϤޤ�2,000�椹�٤Ƥ� computer�������褦�Ȼפ��ޤ�����ˡ�Ȥ���2�Ĥ�ͭ�����䤤��碌�����äơ�1�Ĥ� �ʲ��Τ褦�ʤ�ΤǤ���
DELETE FROM computer WHERE hostname >= 'old' AND hostname < 'ole'
�������䤤��碌�Υ롼����Ф���ײ�ϰʲ��Τ褦�ʤ�ΤǤ���
�ϥå����� -> software ��ǽ祹����� -> �ϥå��� -> computer ��� comp_hostidx ��Ȥä�����ǥå����������
�⤦1�Ĥβ�ǽ���䤤��碌�ϰʲ��Τ褦�ʤ�ΤǤ���
DELETE FROM computer WHERE hostname ~ '^old';
����ϰʲ��μ¹Էײ����äƤ��ޤ���
�ͥ��ȥ롼�� -> computer ��� comp_hostidx ��Ȥä�����ǥå���������� -> software ��� soft_hostidx ��Ȥä�����ǥå����������
���줬�����Ƥ��뤳�Ȥϡ��ץ��ʤϡ�regexp�С������ǤϹԤä���AND �Ƿ�礵�줿ʣ���θ�����郎¸�ߤ�����computer���hostname ���Ф��븡�����ǡ�software��Υ���ǥå����������ˤ�Ʊ�ͤ˻��ѤǤ��뤳�Ȥ狼�äƤ��ʤ��Ȥ������ȤǤ����ȥꥬ�Ϻ�������٤�2,000��ε켰����ԥ塼���Τ����줫�ˤ�ä�1��ƤӽФ��졢���computer���1��Υ���ǥå�����������software���Ф���2,000��Υ���ǥå���������Ԥ��ޤ����롼��μ����Ǥϥ���ǥå������2�Ĥ��䤤��碌�ˤ�äƼ¹Ԥ���ޤ����༡�������ξ��Ǥ�롼�뤬���®�����ɤ�����software�ơ��֥���礭���˰�¸���ޤ������Ȥ��뤹�٤ƤΥ���ǥå����֥��å����֤�ʤ�����å���˸����Ȥ��Ƥ⡢SPI�ޥ͡�������Ф���2,000����䤤��碌�μ¹Ԥˤϻ��֤��פ��ޤ���
�Ǹ���䤤��碌�Ƥߤޤ��礦��
DELETE FROM computer WHERE manufacurer = 'bim';
����ʸ�Ǥ�computer���餿������ιԤ����������̤Ȥʤ�ޤ��������Ǥ�ȥꥬ�ϥ��������塼����¿�����䤤��碌��ȯ�Ԥ��뤳�Ȥˤʤ�ޤ����롼��ײ��ޤ�����Ʊ��2�ĤΥ���ǥå����������Υͥ��ȥ롼�פȤʤ�ޤ���computer���̤Υ���ǥå�����Ȥ��С��ʲ��Τ褦�ˤʤ�ޤ���
�ͥ��ȥ롼�� -> computer ���Ф��� comp_manufidx ����Ѥ�������ǥå���������� -> software ���Ф��� soft_hostidx ����Ѥ�������ǥå����������
�����Υ롼���䤤��碌�η�̤ϡ��ʲ��Τ褦�ʤ�ΤǤ���
DELETE FROM software WHERE computer.manufacurer = 'bim' AND software.hostname = computer.hostname;
������ξ��ˤ����Ƥ⡢�롼�륷���ƥब��������;ʬ���䤤��碌�ϱƶ��������Կ������¿���쾯�ʤ�����Ω���Ƥ��ޤ���
�̤ξ����Ȥ��ơ�����������¹Ԥ��٤����ݤ����ѹ����줿°���˰�¸���롢UPDATE�ξ�礬����ޤ���PostgreSQL 6.4�Ǥϡ��롼�륤�٥�Ȥˤ�����°������ϤǤ��ʤ��ʤäƤ��ޤ����٤��Ȥ�6.5���뤤�Ϥ⤦������˻Ȥ���褦�ˤʤ�Ǥ��礦�����Ф餯���Ԥ��������ˡ��������äơ���������shoelace_log����Τ褦�ʥ롼����������ͣ�����ˡ�ϡ��롼�������Ѥ��뤳�ȤǤ��������䤤��碌����Ū�ꥹ�Ȥ˽ФƤ��ʤ����ᡢ������оݤȤ���°�����ѹ�����ʤ��Ƥ��˼¹Ԥ�������̤��䤤��碌�Ȥʤ�ޤ������ٻȤ���褦�ˤʤä����ϥȥꥬ���Ф���롼��Τ⤦1�Ĥζ��ߤˤʤ�ޤ������ξ�硢�ȥꥬ�κ�Ŭ���Ϥ�������ˤ���Բ�ǽ�Ǥ��������°�����ѹ����줿�Ȥ��ˤΤߤ��Υ���������Ԥ��Ȥ����������ΤϤ��Ρʥȥꥬ�˴ؿ������˱�����Ƥ��뤫��Ǥ����ȥꥬ������Ϲԥ�٥�Τߤ��Ф���ǧ�����Τǡ��Ԥ�������ȥȥꥬ�����꤬������褦�˥ȥꥬ���ƤӽФ���ʤ���Фʤ�ޤ��롼�륷���ƥ�ξ����оݥꥹ�Ȥ����뤳�Ȥ��ѹ����줿���ɤ����狼��ޤ��Τǡ�°���������Ƥ��ʤ���Ф��θ���䤤��碌�٤���ߤ��뤳�Ȥ��Ǥ��ޤ�������̵ͭ�ˤ�����餺���롼��ϼ¹Ԥ��ʤ���Фʤ�ʤ����Ȥ�����Х�������¹Ԥ��ޤ���
�䤤��碌��̤��礭�����ץ��ʤ����ޤ�����������Ǥ��ʤ��褦�ʾ������ǤΤߥ롼��ϥȥꥬ����٤����餫���٤��ʤ�ޤ����롼����礭�ʶ��ȤΤ褦�ʤ�Τǡ����դ��դ�������ޤ������ޤ��Ȥ��Фɤ��ţ�Ǥ⤦�ޤ��Ǥ������ΤǤ���