9章複数のテーブルおよびクエリーの操作
この章では、結合や集合演算子を使って複数のテーブルを1つにまとめる方法と、共通テーブル式を使って複数のクエリーを扱う方法について解説します。
表9-1は、この章で扱う3つの概念に関する説明とコード例を示したものです。
概念 | 説明 | コード例 |
---|---|---|
テーブルの結合 | 一致する行に基づいて、2つのテーブルの列を結合する | SELECT c.id, l.city FROM customers c INNER JOIN loc l ON c.lid = l.id; |
集合演算子 | 一致する列に基づいて、2つのテーブルの行を結合する | SELECT name, city FROM employees; UNION SELECT name, city FROM customers; |
共通テーブル式 | クエリーの結果を一時的に保存して、別のクエリーから参照できるようにする。これには、再帰クエリーや階層クエリーも含まれる | WITH my_cte AS ( SELECT name, SUM(order_id) AS num_orders FROM customers GROUP BY name) SELECT MAX(num_orders) FROM my_cte; |
9.1 テーブルの結合
SQLでは、結合(joining)とは、1つのクエリーの中で複数のテーブルからデータをまとめることを意味します。次の2つのテーブルは、ある女性たちが住んでいる州(state)と彼女たちが所有しているペット(pet)を表します。
-- states -- pets +------+-------+ +------+------+ | name ...
Get SQLポケットガイド 第4版 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.