2016-03-28 47 views
1

我在TEMP_DATA表消除記錄,而不結合

enter image description here

從這些記錄下的數據,我想獲得只有那些有CAT_NO 36和記錄39組合,理想的我期待的記錄結果如下

enter image description here

我怎樣才能做到這一點?

回答

3

我沒有一個實例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)) ; 
1

你爲什麼不嘗試相交。

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)