PostgreSQL 9.0.4ʸ�� | ||||
---|---|---|---|---|
前のページ | 巻戻し | 第 2章SQL���� | 早送り | 次のページ |
�����ޤǤ��䤤��碌�ϡ����٤�1�ĤΥơ��֥�ˤΤߥ������������ΤǤ����� �䤤��碌�ϡ����٤�ʣ���Υơ��֥�˥����������뤳�Ȥ⡢Ʊ���˥ơ��֥����ʣ���ιԤν�����Ԥ����ʤɡ�Ʊ���ơ��֥�˥����������뤳�Ȥ��ǽ�Ǥ��� ���٤�Ʊ��Υơ��֥�ޤ���ʣ���Υơ��֥��ʣ���ιԤ˥������������䤤��碌�ϡ�����䤤��碌�ȸƤФ�ޤ��� ��Ȥ��ơ���Ϣ�����ԻԤΰ��־���ݥǡ����Ȱ���ɽ����������礬���ޤ��� �����Ԥ�����ˤϡ�weather�ơ��֥�γƹԤ�city��ȡ�cities�ơ��֥�����ƤιԤ�name�����Ӥ���ξ�Ԥ��ͤ����פ���Ԥ��Ȥ߹�碌�����ʤ���Фʤ�ޤ���
注意: ����ϳ�ǰŪ�ʥ�ǥ�Ǥ�������ޤ��� �ºݤη����̾1�ĤҤȤĤιԤ��Ȥ߹�碌����٤�ΤǤϤʤ�����äȸ�ΨŪ����ˡ�ǹԤ��ޤ��� ������������ϥ桼������Ϥ狼��ޤ���
����ϡ��ʲ����䤤��碌�ˤ�äƹԤ����Ȥ��Ǥ��ޤ���
SELECT * FROM weather, cities WHERE city = name;
city | temp_lo | temp_hi | prcp | date | name | location ---------------+---------+---------+------+------------+---------------+----------- San Francisco | 46 | 50 | 0.25 | 1994-11-27 | San Francisco | (-194,53) San Francisco | 43 | 57 | 0 | 1994-11-29 | San Francisco | (-194,53) (2 rows)
���η�̤���2�ĤΤ��Ȥ��狼��ޤ���
Hayward�ԤˤĤ��Ƥη�̹ԤϤ���ޤ��� cities�ơ��֥�ˤ�Hayward�˰��פ�����ܤ��ʤ������κݤ�weather�ơ��֥���ΰ��פ��ʤ��Ԥ�̵�뤵��뤫��Ǥ��� ���줬�ɤΤ褦�ˤʤ����Τ���ñ�˸��Ƥߤޤ��礦��
�Ի�̾����ģ��Ĥ�����ޤ��� weather�ơ��֥��cities�ơ��֥뤫�����Υꥹ�Ȥ�Ϣ�뤵��Ƥ��뤿�ᤳ�Τ褦�ˤʤ�ޤ��� �������ºݤˤϡ������˾�ޤ�����̤ǤϤʤ����ᡢ*��Ȥ鷺�ˡ�����Ū�˽�����Υꥹ�Ȥ���ꤹ�뤳�Ȥˤʤ�ޤ���
SELECT city, temp_lo, temp_hi, prcp, date, location FROM weather, cities WHERE city = name;
����: WHERE����ά�������Τ����䤤��碌�ΰ�̣����ꤷ�Ƥ���������
��Ϥ��줾��ۤʤ�̾���Ǥ��Τǡ��ѡ����ϼ�ưŪ�ˤɤΥơ��֥���Ĥ��ޤ��� 2�ĤΥơ��֥����̾����ʣ���Ƥ������ϡ��ʲ��Τ褦�ˤɤ�������ɽ���������������������̾���������ʤ���Фʤ�ޤ���
SELECT weather.city, weather.temp_lo, weather.temp_hi, weather.prcp, weather.date, cities.location FROM weather, cities WHERE cities.name = weather.city;
����䤤��碌�ǤϤ��٤Ƥ���̾������������ͥ��Ƥ���Ȥ褯�ͤ����Ƥ��ޤ��� �ơ��֥�Τ����줫�˸�ǽ�ʣ����̾����������ɲä��줿���ˡ��䤤��碌�����Ԥ��뤫��Ǥ���
�����Ǽ����褦�ʷ���䤤��碌�ϡ��ʲ��Τ褦���̤η���ɽ�����Ȥ��Ǥ��ޤ���
SELECT * FROM weather INNER JOIN cities ON (weather.city = cities.name);
���ι�ʸ�������������Ū�˻��Ѥ�����ΤǤϤ���ޤ����ʹߤ���������������뤿��ˤ����Ǽ����Ƥ��ޤ���
�����ǡ��ɤΤ褦�ˤ����Hayward�Υ쥳���ɤ����뤳�Ȥ��Ǥ���褦�ˤʤ�ΤǤ��礦���� �¹Ԥ������䤤��碌�ϡ�weather������ƹԤ��Ф��ơ�cities�Ԥ˰��פ��뤫��Ƚ�Ǥ����ΤǤ��� ���פ��ʤ��Ԥ����ä���硢cities�ơ��֥�������ʬ�餫��"������"���֤����������ΤǤ��� ���μ���䤤��碌����������ȸƤФ�ޤ� �ʤ���ޤǼ����Ƥ��������������Ǥ��ˡ� �ʲ��Τ褦�ʥ��ޥ�ɤˤʤ�ޤ���
SELECT * FROM weather LEFT OUTER JOIN cities ON (weather.city = cities.name); city | temp_lo | temp_hi | prcp | date | name | location ---------------+---------+---------+------+------------+---------------+----------- Hayward | 37 | 54 | | 1994-11-29 | | San Francisco | 46 | 50 | 0.25 | 1994-11-27 | San Francisco | (-194,53) San Francisco | 43 | 57 | 0 | 1994-11-29 | San Francisco | (-194,53) (3 rows)
�����䤤��碌������������ȸƤФ�ޤ��� ���黻�Ҥκ�¦�˻��ꤷ���ơ��֥�γƹԤ�����Ǥ���ٽ��Ϥ��졢�����ǡ���¦�Υơ��֥�ǤϺ�¦�Υơ��֥�ιԤ˰��פ����ΤΤߤ����Ϥ���뤫��Ǥ��� ��¦�Υơ��֥�˰��פ��ʤ�����¦�Υơ��֥�ιԤ���Ϥ��������¦�Υơ��֥����϶����͡�NULL�ˤ��ִ�����ޤ���
����: ���������䴰����������¸�ߤ��ޤ��� ����餬����Ԥ�����ͤ��Ƥ���������
�ơ��֥��ʬ���Ȥ��Ф��Ʒ�礵���뤳�Ȥ��Ǥ��ޤ��� ��������ʷ���ȸƤФ�ޤ��� ��Ȥ��ơ�¾�ε��ݥǡ����ε����ϰ���ˤ��뵤�ݥǡ��������Ƽ��Ф����Ȥ�ͤ��ޤ��� weather�ƹԤ�temp_lo��temp_hi��¾��weather�Ԥ�temp_lo��temp_hi��Ȥ���Ӥ��ʤ���Фʤ�ޤ��� �ʲ����䤤��碌����Ѥ��ƹԤ����Ȥ��Ǥ��ޤ���
SELECT W1.city, W1.temp_lo AS low, W1.temp_hi AS high, W2.city, W2.temp_lo AS low, W2.temp_hi AS high FROM weather W1, weather W2 WHERE W1.temp_lo < W2.temp_lo AND W1.temp_hi > W2.temp_hi; city | low | high | city | low | high ---------------+-----+------+---------------+-----+------ San Francisco | 43 | 57 | San Francisco | 46 | 50 Hayward | 37 | 54 | San Francisco | 46 | 50 (2 rows)
�����ǡ����κ�¦�ȱ�¦����̤��뤳�Ȥ��Ǥ���褦�ˡ�weather�ơ��֥��W1��W2�Ȥ�����٥���դ��Ƥ��ޤ��� �ޤ��������̤�ʤ�����ˡ�¾���䤤��碌�Ǥ⤳�μ����̾����Ѥ��뤳�Ȥ��Ǥ��ޤ��� �ʲ�������ޤ���
SELECT * FROM weather w, cities c WHERE w.city = c.name;
�������ä����ξ�ά�Ϥ��ʤ�褯�Ԥ��ޤ���