SOME 演算子 - いずれかの条件を満たすものを求める -

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

WHERE 式 比較演算子 SOME ( 副問い合せ )

関連キーワード

 SOME 演算子は、指定した式と副問い合せの結果を比較するときに使用します。 このとき、比較演算子の条件が一つでも真になるとき真、条件がすべて偽になるとき偽になります。 なお、MySQL で SOME 演算子を使用する場合には、バージョン 4.1 以降が必要です。

-- 【説明】
-- この SQL 文は、まず副問い合せである「T_13_2」表の「I1_NAME」列の値が「車体部品」と等しい「I1_CODE」列の値を取得します。 次に、この副問い合せの結果セットが「T_13_1」表の「I1_CODE」列の値に含まれているかの問い合せを行います。 このとき、「T_13_1」表の「I1_CODE」列の値が副問い合せの結果セット(201, 202)のいずれかの値と一致するデータを取得することになります。

SELECT * FROM T_13_1
 WHERE I1_CODE = SOME (
  SELECT I1_CODE FROM T_13_2
   WHERE I1_NAME = '車体部品'
 );


SERIALI1_CODEI2_CODEI_COST
203002201206500
203004201205500
203005201205600
203006202205600

参考表

T_13_1

SERIALI1_CODEI2_CODEI_COST
203001101102500
203002201206500
203003301309800
203004201205500
203005201205600
203006202205600

T_13_2

I1_CODEI1_NAMEI1_PRICE
101汎用部品 500
201車体部品2300
202車体部品2400
301特殊部品4500