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

節内でSQLに渡された欠落データを検索する

    unionを使用できます 都市のテーブルを作成してからminus 演算子。

    select 'Dallas' as city from dual union all 
    select 'Berlin' as city from dual union all 
    select 'Cracow' as city from dual union all 
    select 'Praha'  as city from dual  
    minus
    select city from address
    

    ユニオンの代わりに、事前定義されたタイプodcivarchar2listを使用できます。 、構文を短縮します:

    select column_value as city 
      from table(sys.odcivarchar2list('Dallas', 'Berlin', 'Cracow', 'Praha'))
    minus
    select city from address
    

    ...そしてminusの代わりに 結合を使用することも、not inを使用することもできます またはnot exists

    両方のクエリのテストデータと出力:

    create table address (id number, city varchar2(10));
    insert into address values (1, 'Rome');
    insert into address values (2, 'Dallas');
    insert into address values (3, 'Cracow');
    insert into address values (4, 'Moscow');
    insert into address values (5, 'Liverpool');
    insert into address values (6, 'Cracow');
    insert into address values (7, 'Seoul');
    
    CITY
    ------------
    Berlin
    Praha
    


    1. Oracle 11g - キャリッジ リターン ライン フィードを使用して CLOB 内のレコードを検索する

    2. Postgresqlを使用して、単一IDの配列値が行ごとに表示されます

    3. Microsoft SQLServer2012へのAdventureWorksデータベースサンプルのインストール

    4. SQLServerのストアドプロシージャからcsv出力ファイルを作成する方法