oracle sqlのINTERSECTとminumの違いを教えてください

Writer: admin Type: arte Date: 2019-01-05 00:00
oracle sqlのINTERSECTとminumの違いを教えてください 。共感した0###TBL1(ID)112233TBL2(ID)113の時にselect * from t1minusselect * from t2はID--2select * from t1intersectselect * from t2は共通するものを抽出するのでID--13どちらもunion同様重複行はまとめられます。minusはoracleの方言で標準SQLではexceptがそれあたります。標準SQLだとunion allのようにintersect allexcept allもありますがoracleでは実装されていません。minus allもありません。SQLの規格としてはselect * from t1except allselect * from t2だとID--223select * from t1intersect allselect * from t2でID--113です。直感的にわかりづらいというのが実装するRDBMSが少ない理由かもしれません。ナイス0
###ありがとうございます。###INTERSECTとMINUSの違いではないでしょうか。INTERSECTは積集合ですので、両者のテーブルのどちらにも存在する行を返します。MINUSは差集合ですので、最初のテーブルに有って後のテーブルに無い行を返します。ナイス0

 

TAG