マルチクエリ(内側および外側接続)

マルチテーブルクエリ

  1、マルチテーブルクエリの役割

    SQL文が複数のテーブルを照会する場合は、複数の異なるテーブルでクエリの結果から、各テーブルには、データの1つ以上の列を取ります。

  図2に示すように、マルチテーブルクエリ分類

     

  3、デカルト積現象

    (1)デカルト積:二組A、Bであります どちらも、コレクションのすべての構成を取ります。

    (2)デカルト積現象の影響を排除するマルチテーブルクエリの使用、無駄なデータを除去する必要が:。

第二に、コネクタ

  彼らが表示されている基準を満たしている場合、テーブルの左に記録することは、表の右側にレコードを一致させます。以下のような:。..表の外部キー主テーブルの主キー=

  1、暗黙的な接続

    コネクタ内暗黙:それによって冗長なデータを除去する、指定された条件を用いたキーワードを、JOIN参照

フィールド左側のテーブルから名前を選択、右表の条件

     デモ:

EMPから選択*、DEPT emp.`dept_id` = dept.`id`。

    

  図2に示すように、接続ディスプレイ

    ディスプレイに接続:使用、内側には参加...文で内部を省略することができます。

フィールド左側のテーブルから名前を選択[INNER]がON状態に右の表を登録しよう

     デモ:

インナーのemp eからe.`id`数、e.`name`名、e.`gender`性別、e.`salary`賃金、d.`name`部門名を選択しe.`dept_id` =上のdept Dに参加d.`id` e.`name`は= '僧';

      

     要約手順内のクエリに参加

    ①どのテーブルクエリを決定

    ②接続決意条件テーブル

    ③クエリの条件を決定します

    ④フィールドクエリを決定

    

第三に、外部接続

  1、左外側

    外側左:参加...の外側左使用し、外側を省略することができます。

フィールド左テーブルLEFT [OUTER]条件を右表のJOINから名前を選択

     彼らはディスプレイの条件を満たしている場合、すべてのデータと、左テーブルの彼らの交差部を問い合せて、そうでない場合、ディスプレイはnull。

      デモ:

//左外部結合クエリを使用して、DEPT dから選択*はd.`id` = e.`dept_id`にEMP Eに参加左

     

  2、右外側コネクタ

    右の外側の接続:外部結合...右のを使用して、外を省略することができます。

フィールド左テーブルRIGHT [OUTER]から名前を選択状態で右の表を登録しよう

      そうでない場合は、表示はnull;彼らはディスプレイの条件を満たしている場合、クエリは、データと表の右側の部分のすべての交点です。

    デモ:

右dept.`id` = emp.`dept_id`にEMPに参加DEPTから選択*; //右の外部結合クエリを使用

    

おすすめ

転載: www.cnblogs.com/niujifei/p/11594265.html