2016-07-22 1 views
-1

すべての値のインスタンスを探す:のOracle SQL - 私は次のようなテーブルがあり、グループ内</p> <p>を

Event_id  Event_Rank  Procedure  Modifier 
--------  ----------  ---------  -------- 
1    1.01   12345   AA 
1    1.02   12345   AB 
1    1.03   67890   ZZ 
2    2.01   12345   AA 
2    2.02   67890   ZZ 

私は内で見つかったOracleのSQLクエリを実行しようとしていますグループ(Event_ID)、同じプロシージャの2つがある任意のインスタンス。イベント1のために存在します(最初の2行)

助けていただければ幸いです。

TonyVan

答えて

1

あなたはこのような何か試すことができます。

with w_data as (
     select 1 event_id, 1.01 event_rank, 12345 c_procedure, 'AA' modifier from dual union all 
     select 1 event_id, 1.02 event_rank, 12345 c_procedure, 'AB' modifier from dual union all 
     select 1 event_id, 1.03 event_rank, 67890 c_procedure, 'ZZ' modifier from dual union all 
     select 2 event_id, 2.01 event_rank, 12345 c_procedure, 'AA' modifier from dual union all 
     select 2 event_id, 2.02 event_rank, 67890 c_procedure, 'ZZ' modifier from dual 
     ) 
    Select event_id, event_rank, c_procedure, modifier 
    from (
      select event_id, event_rank, c_procedure, modifier, 
        count(*) over (partition by event_id, c_procedure) dup_chk 
      from w_data 
     ) 
    where dup_chk > 1 
/

    EVENT_ID EVENT_RANK C_PROCEDURE MO 
    ---------- ---------- ----------- -- 
      1  1.01  12345 AA 
      1  1.02  12345 AB 

    2 rows selected. 
+0

パーフェクト!それは私が探していた正確な結果を私に与えました。 – TonyVan

関連する問題