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

Oracle SQL:IN句内で1000を超えるアイテムを使用する方法

    Oracleでこれを処理するための推奨される方法は、一時テーブルを作成し、これに値を書き込んでから、これに結合することです。動的に作成されたINを使用する 句は、クエリオプティマイザがすべてのクエリの「ハード解析」を実行することを意味します。

    create global temporary table LOOKUP
    (
        ID NUMBER
    ) on commit delete rows;
    
    -- Do a batch insert from your application to populate this table
    insert into lookup(id) values (?)
    
    -- join to it
    select foo from bar where code in (select id from lookup)
    


    1. Oracleのすべてのテーブルのリストを取得しますか?

    2. MySQLで特定の日付の月末日を見つける方法

    3. マネージドホスティングアカウントにphpMyAdminをインストールする方法

    4. Oracleデータベースのテーブルサイズを確認するためのクエリ