29_Oct_2021 🐰 Ellis AI軌跡TIL:SQL II


SQLによるデータ処理


複数のテーブルの制御


データ・グループの作成(グループ関数)


GROUP BY:テーブル・グループの基準を定義することによってグループ化される関数.
SELECT user_id, COUNT(*)
FROM rental
GROUP BY user_id;
GROUP BYをより良く利用するためには、SUM、AVG、COUNT、MAX、MIN関数を併用することが望ましい.

データ・グループへの条件の適用


GROUP BY / HAVING

SELECT user_id, COUNT(*)
FROM rental
GROUP BY user_id
HAVING COUNT(user_id) > 1;
リーステーブルでuser idと同じスーパー数のデータが何個あるかを検索します.

2つのテーブルでのクエリー


INNER JOIN


INNER JOIN関数は、2つのテーブルの情報を一度に問い合わせる
  • の2つのテーブルの情報を一度に問い合わせることができます.
  • SELECT *
    FROM rental
    INNER JOIN user;

    条件クエリーを適用する2つのテーブル

    SELECT *
    FROM rental
    INNER JOIN user
    ON user.id = rental.user_id;
    ON以下の条件.「≪条件|Condition|emdw≫」セクションには、条件を適用するデータが表示されます.カラム名で入力します.

    LEFT JOIN


    2つの左データに重なる部分を中心に出力します.
    右側のテーブルに左のテーブルのデータと一致するデータがない場合、NULLが表示されます.
    SELECT *
    FROM user
    LEFT JOIN rental
    ON user.id = rental.user_id;
    すべてのuserテーブルが出力され、すべてのuserテーブルのuser idと
    レンタルテーブルのuser idを統合します.

    RIGHT JOIN


    2つの右側のデータと重なる部分を中心に出力します.
    左側のテーブルに右側のテーブルのデータと一致するデータがない場合、NULLが表示されます.
    SELECT *
    FROM user
    RIGHT JOIN rental
    ON user.id = rental.user_id;
    すべてのリーステーブルを出力し、すべてのリーステーブルのuser idとuserテーブルのidを統合します.
    実際の操作で主に使用されるのはLeft Joinです.左の最初の列からチェックするとデータが分かりやすいからです.