Re: ON句における抽出条件の説明について

この質問の投稿一覧へ

なし Re: ON句における抽出条件の説明について

msg# 1.1
depth:
1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2017-6-12 17:31
quensan  長老   投稿数: 119
>ON句では結合条件にANDで続けて、WHERE句に記述していた抽出条件を指定することもできる、と読めます。

その通りではないでしょうか。
古いですが、オラクルマスター教科書(黒本)11g SQL基礎には以下のように書いてありました。
<引用>
ON句には結合条件を指定し、WHERE句には検索条件を指定します。
検索条件には、WHERE句、またはON句のANDキーワードのどちらを使用してもかまいません。
<引用>

>「on 条件A where 条件B 」と「on 条件A and 条件B 」では結果が異なる場合があるのではないでしょうか。

試してみると結果は同じでした。

SQL> SELECT e.employee_id, e.employee_name
FROM departments d JOIN employees e
ON d.department_id = e.department_id
WHERE e.department_id = 5;

EMPLOYEE_ID EMPLOYEE_NAME
----------- --------------------
1005 加藤昭彦
1012 阿部伊吹
1017 渡辺和也

SQL> SELECT e.employee_id, e.employee_name
FROM departments d JOIN employees e
ON d.department_id = e.department_id
AND e.department_id = 5;

EMPLOYEE_ID EMPLOYEE_NAME
----------- --------------------
1005 加藤昭彦
1012 阿部伊吹
1017 渡辺和也

参考URLは外部結合の話で、そうなると書き方が違ってくるのかもしれません。

投稿ツリー

  >フォーラム検索へ


Copyright (c) 2020 Ping-t All rights reserved.