てぃぐれのプログラマwiki

ワクワクに従う

知らなかった副問合せ【ORACLE】

ANY

ANYはなかなか使わないけど、selectしたもののうち一つでも条件に合えば返す

 

X > ANY(select Y from Z) → ZのYのうちのひとつを上回ればtrue

 → X > select MIN(Y) from Z で良さそう

 

速さはANYの方が速そう

 

ALL

select したもののうち全ての条件に合えば返す

Y > ALL(select Y from Z) → ZのYの全てを上回ればtrue

 → Y > select MAX(Y) from Z でよさそう

 

速さはALLの方が速そう

 

複数一致

select * from A  where (b,c) = select b,c from Dというふうに複数列の条件を一度にかける。これは知らなかった。多分、これを使うべき時はあったんじゃないかな。

不覚。