Oralce in文と副問合せを使って複数の値を条件にするサンプル

環境
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0
SQL*Plus: Release 12.2.0.1.0

構文
select * from テーブル名
where 項目名 in (select 項目名 from テーブル名 where 条件式)

使用例
userテーブル

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
userid username age
10 sa201 32
22 sas02 41
33 sasd03 44
userid username age 10 sa201 32 22 sas02 41 33 sasd03 44
userid	username	   age
10	    sa201	    32
22	    sas02	    41
33         sasd03           44

userテーブルに「username」の値が文字「s」含まれるデータを抽出します。
SQL構文

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
select
*
from
user
where
age in (select age from user where username like '%s%');
select * from user where age in (select age from user where username like '%s%');
select
  * 
from
user
where
  age in (select age from user where username like '%s%');

 

Oracle 12c

Posted by arkgame