SELECT DISTINCT TBL1.COL1 FROM TBL1
WHERE COL1 IN ( SELECT COL1 FROM TBL2 )
ア
SELECT DISTINCT TBL1.COL1 FROM TBL1
UNION SELECT TBL2.COL1 FROM TBL2
イ
SELECT DISTINCT TBL1.COL1 FROM TBL1
WHERE EXISTS
( SELECT * FROM TBL2 WHERE TBL1.COL1 = TBL2.COL1 )
ウ
SELECT DISTINCT TBL1.COL1 FROM TBL1
WHERE TBL1.COL1 = TBL2.COL1
AND TBL1.COL2 = TBL2.COL2
エ
SELECT DISTINCT TBL1.COL1 FROM TBL1 LEFT OUTER JOIN TBL2
ON TBL1.COL1 = TBL2.COL1
答え イ
【解説】
元のSQL文
SELECT DISTINCT TBL1.COL1 FROM TBL1
WHERE COL1 IN ( SELECT COL1 FROM TBL2 )
は、TBL2のCOL1と一致するTBL1のCOL1を重複を除いて出力するという意味で、これと同じSQL文はイの
SELECT DISTINCT TBL1.COL1 FROM TBL1
WHERE EXISTS
( SELECT * FROM TBL2 WHERE TBL1.COL1 = TBL2.COL1 )
になります。