プロが教える店舗&オフィスのセキュリティ対策術

Oracle、SQLともに初心者のため困っています。
どなたか教えてください。
フィールド1、2で重複(2件以上存在)するレコードに対して、そのテーブルの全項目を取得したいのです。
例:
処理前
フィールド1,フィールド2 ,フィールド3
1 , AA, 1
1 , AA, 2
1 , BB, 3
1 , BB, 4
2 , CC, 5
2 , CC, 6
3 , DD, 7
4 , EE, 8
5 , FF, 9

処理後
フィールド1, フィールド2,フィールド3
1 , AA, 1
1 , AA, 2
1 , BB, 3
1 , BB, 4
2 , CC, 5
2 , CC, 6

どうしたらよいでしょうか?
よろしくお願い致します。

A 回答 (3件)

フィールド3わすれてました



select フィールド1,フィールド2 ,フィールド3
from table_name a,
( select フィールド1,フィールド2,count(*)
from table_name
group by フィールド1,フィールド2
having count(*)>=2) b
where a.フィールド1=b.フィールド1
and a.フィールド2=b.フィールド2
    • good
    • 0
この回答へのお礼

ご返答ありがとうございました。
なんとか理解できました。
また、お願いします。

お礼日時:2006/03/27 15:20

対象となる表を絞り込む条件の話なので、



select * from 表
where
(フィールド1,フィールド2)
in
(select フィールド1,フィールド2 from 表 group by フィールド1,フィールド2 having count(*)>1)

とかが判りやすいかと思います。
    • good
    • 0
この回答へのお礼

ご返答ありがとうございました。
この方法でも出来るのですね。
またご指導下さい。

お礼日時:2006/03/27 15:21

select フィールド1,フィールド2 ,フィールド3


from ( select フィールド1,フィールド2,count(*)
from table_name
group by フィールド1,フィールド2
having count(*)>=2)
とかどうでしょう
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す