INTERSECT 演算子 - 積集合を求める -

SQL-92/99   Oracle DB2 SQL Server MySQL PostgreSQL Access

SELECT文1
INTERSECT [ ALL ]
SELECT文2

関連キーワード

INTERSECT 関数(SQL Server)

 INTERSECT 演算子は、SELECT 文 1 の問い合せ結果と SELECT 文 2 の問い合せ結果の積集合を求めるときに使用します。

-- 【説明】
-- この SQL 文は、「T_13_1_BK」表の問い合せ結果である 6 件のデータと「T_13_1」表の問い合せ結果である 6 件のデータに含まれる同一のデータを取得することになります。

SELECT * FROM T_13_1_BK
 INTERSECT
  SELECT * FROM T_13_1;


SERIALI1_CODEI2_CODEI_COST
203001101102500
203003301309800

 INTERSECT 演算子では、ALL キーワードを指定することで、複数の SELECT 文の問い合せ結果の積集合を求めるとき、重複するデータも含めた積集合を求めることができます。 なお、Oracle では、ALL キーワードを指定できません。

-- 【説明】

SELECT * FROM T_13_1_BK
 INTERSECT ALL
  SELECT * FROM T_13_1


SERIALI1_CODEI2_CODEI_COST
203001101102500
203003301309800
203001101102500
203003301309800

参考表

T_13_1

SERIALI1_CODEI2_CODEI_COST
203001101102500
203002201206500
203003301309800
203004201205500
203005201205600
203006202205600

T_13_1_BK

SERIALI1_CODEI2_CODEI_COST
191001101101500
191002201205500
191003301307800
191004201206500
203001101102500
203003301309800