sql >> データベース >  >> RDS >> Oracle

Oracleマイナスステートメントが重複を削除しないようにする

    別のオプション:

    SELECT TEST, row_number() OVER (PARTITION BY TEST ORDER BY TEST) FROM TEST1
    MINUS
    SELECT TEST, row_number() OVER (PARTITION BY TEST ORDER BY TEST) FROM TEST2
    

    これはマイナスになり、各重複は個別のエントリとして扱われます。以下の例では、TEST1に2つの「C」値があり、TEST2に1つしかない場合、出力に1つが含まれることに注意してください。

    dev> select * from test1;
    
    T
    -
    A
    A
    B
    C
    C
    
    dev> select * from test2;
    
    T
    -
    B
    C
    
    dev>     SELECT TEST, row_number() OVER (PARTITION BY TEST ORDER BY TEST) FROM TEST1
      2      MINUS
      3      SELECT TEST, row_number() OVER (PARTITION BY TEST ORDER BY TEST) FROM TEST2
      4  /
    
    T ROW_NUMBER()OVER(PARTITIONBYTESTORDERBYTEST)
    - --------------------------------------------
    A                                            1
    A                                            2
    C                                            2
    


    1. ORA-12505、TNS:listenerは現在、connectdesで指定されたSIDを認識していません

    2. SQL Serverでクラスター化インデックスを選択するにはどうすればよいですか?

    3. SQLiteテーブルの作成

    4. カテゴリとそのサブカテゴリに属する​​すべての投稿をカウントする