TEMP_DATA テーブルに次のデータがあります
これらのレコードから、CAT_NO 36 と 39 のレコードの組み合わせを持つレコードのみを取得したいと思います。理想的には、期待される結果は次のとおりです。
これどうやってするの?
テストするOracle8インスタンスはありませんが、これは機能するはずです:
select * from temp_data where prod_no in (
select prod_no from temp_data where cat_no = 39 and prod_no in (
select prod_no from temp_data where cat_no = 36 ) ) ;
なぜ交差しようとしなかったのですか?
SELECT prod_type,
prod_no,
cat_no,
prod_cat,
text,
prod_seq
FROM temp_data
WHERE prod_no IN (SELECT prod_no
FROM temp_data
WHERE cat_no = 36
INTERSECT
SELECT prod_no
FROM temp_data
WHERE cat_no = 39)