[pgsql-jp: 39398] Re: NOT NULL 同士の外部結合
Nobuyasu Jinnai (Aset ITM)
Nobuyasu.Jinnai @ aset.co.jp
2008年 6月 4日 (水) 17:24:07 JST
下記、ありがとうございます。
具体例がイメージできなかったもので。
code IS NOT NULL とかですかね。
ありがとうございます。
From: ゆむ <qqqz9b69 @ green.ocn.ne.jp>
Subject: [pgsql-jp: 39397] Re: NOT NULL 同士の外部結合
Date: Wed, 04 Jun 2008 17:41:27 +0900
>
> table_a
>
> a_id | code
> ------+------
> 1 | abc
> 2 | def
>
>
> table_b
>
> b_id | code
> ------+------
> 1 | aaa
> 2 | abc
>
> という2つのテーブルで
> SELECT table_a.a_id, table_a.code, table_b.b_id, table_b.code
> FROM table_a LEFT OUTER JOIN table_b USING(code);
> とすると、結果は以下のようになりますけど。
>
> a_id | code | b_id | code
> ------+------+--------+--------
> 1 | abc | 2 | abc
> 2 | def | (null) | (null)
>
> 当然のことながら、table_bでcodeにNOT NULL制約が付いていようと、
> 結合する行が存在しなければnullにしかならないわけです。
>
> そんな行は要らん!!って言うのであれば、INNER JOINを使えば良いわけで、
> LEFT OUTER JOINってのは、そんな行でも要る人向けのやり方です。
>
> --
> ゆむ
>
> ↓↓↓↓↓↓↓↓↓ Original Message ↓↓↓↓↓↓↓↓↓
> From: Nobuyasu Jinnai (Aset ITM) <Nobuyasu.Jinnai @ aset.co.jp>
> To: pgsql-jp @ ml.postgresql.jp
> Date: Wed, 04 Jun 2008 15:16:55 +0900 (JST)
> Subject: [pgsql-jp: 39396] NOT NULL 同士の外部結合
> - - - - - - - - - - - - - - - - - - - -
> > すみません。こんがらがっていますのでご助言頂きたく存じます。
> >
> > 例えばテーブルA,B を LEFT OUTER JOIN したような場合、
> > 該当カラムの定義が NOT NULL であっても、NULL な集合が
> > 生まれることがあるのでしょうか?
> > また、あるとしたらどのような場合でしょうか?
> >
> > #もう一度ちゃんと勉強すべきだとは思いますが、、、
> >
> > よろしくお願いします。
> ↑↑↑↑↑↑↑↑ Original Message Ends↑↑↑↑↑↑↑↑
>
pgsql-jp メーリングリストの案内